我有一个JavaScript客户端和Python龙卷风服务器。我来回传递Json格式字符串的消息。这是我的JavaScript函数:
var message = {};
var senders
message["messageKey"] = "title";
$.ajaxSetup({ cache: false });
$.getJSON("sample.json", function(json) {
message["data"]= json;
senders = jsonToStrConvert(message);
});
function jsonToStrConvert(mes)
{
var getBack= JSON.stringify(mes);
return getBack;
}
它基本上从json文件获取数据,将其转换为字符串对象并通过它发送。
在服务器端,带有龙卷风框架的python:
JsonMessage = json.loads(message)
self.write_message(JsonMessage['messageKey'])
即使使用相对较大的Json有效负载,它也能正常工作。将字符串消息转换为字典后,我可以随意使用它。但是,有时出于不明原因,我得到了这样的错误:
connection opened
ERROR:tornado.application:Uncaught exception in /
Traceback (most recent call last):
File "/usr/local/lib/python3.4/dist-packages/tornado/websocket.py", line 494, in _run_callback
result = callback(*args, **kwargs)
File "index.py", line 29, in on_message
JsonFormattedMessage = json.loads(message)
File "/usr/lib/python3.4/json/__init__.py", line 318, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3.4/json/decoder.py", line 343, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python3.4/json/decoder.py", line 361, in raw_decode
raise ValueError(errmsg("Expecting value", s, err.value)) from None
ValueError: Expecting value: line 1 column 1 (char 0)
connection closed
错误发生在相同的工作环境中,服务器和客户端都在同一网络上。使用之前工作的相同json有效负载。 我完全不了解网络。是否有更好的Web套接字服务器可供使用?可能是JSON特有的?是否有任何cashe或我可以刷新以防止该错误的东西?我搜索了很多,找不到更可靠的方法?