我在 Python-2.7 中创建的 TCP JSON-RPC 服务器有一个奇怪的问题。我使用以下代码构建服务器:
https://github.com/joshmarshall/jsonrpclib
我正在从同一本地网络中将客户端与服务器通信。在控制台窗口中,我可以从 Python 中连接到服务器并针对服务器运行命令。一切都很好。
但是,当我尝试从移动应用程序(在本例中为 iPad)发送 JSON 字符串时,服务器上出现错误。我还下载了此工具以尝试发送 JSON 字符串:http ://www.simplecomtools.com/productcart/pc/downloads/tcptesttool.zip但具有相同的错误结果。服务器正在报告“错误的请求语法”错误。我尝试了几个不同的字符串 - 显示的错误是:
192.168.1.107 - - [13/Oct/2012 09:48:17] 代码 400,消息错误请求语法(“{'jsonrpc':'2.0','method':'add','params':[3, 6],'id':'8'}") 192.168.1.107 - - [13/Oct/2012 09:48:17] "{'jsonrpc':'2.0','method':'add','params ':[3,6],'id':'8'}" 400 -
192.168.1.107 - - [13/Oct/2012 09:49:44] 代码 400,消息错误请求语法 ('{"jsonrpc":"2.0","method":"add","params":[3, 6],"id":"8"}') 192.168.1.107 - - [13/Oct/2012 09:49:44] "{"jsonrpc":"2.0","method":"add","params ":[3,6],"id":"8"}" 400 -
192.168.1.107 - - [13/Oct/2012 09:50:49] 代码 400,消息错误请求语法 ('{"jsonrpc":"2.0","method":"add","params":{"x ":3,"y":6},"id":"8"}') 192.168.1.107 - - [13/Oct/2012 09:50:49] "{"jsonrpc":"2.0","method ":"add","params":{"x":3,"y":6},"id":"8"}" 400 -
192.168.1.107 - - [13/Oct/2012 17:11:59] 代码 400,消息错误请求语法(“{'jsonrpc':'2.0','method':'add','params':{'x ':3,'y':6}, 'id':8}") 192.168.1.107 - - [13/Oct/2012 17:11:59] "{'jsonrpc':'2.0', '方法': 'add', 'params':{'x':3,'y':6}, 'id':8}" 400 -
我真的不知道为什么服务器会认为请求语法不好,即使问这个问题我也觉得有点傻。关于我可以尝试解决语法错误的任何想法?