首页 > 解决方案 > 通过python websockets发送后用JS解码JSON字符串

问题描述

我的 JavaScript 代码无法读取 JSON 对象中的值。

我的设置是:Raspberry pi 上的传感器 -> python -> Websockets <- JS <- p5.js 绘图。

我对 JavaScript 不是很流利,所以这是最有可能出现问题的地方。使用 python,我生成了一个如下所示的字典:

a_dict = {'humidity' : 55.1, 'temperature' : 33.9, 'magneticfield' : 13.2}

然后json.dumps(a_dict),我使用websockets库将其发送到服务器。在浏览器中,我这样做:

var ws = new WebSocket("ws://127.0.0.1:1234/")
ws.onmessage = function(event){
    window.sensordata = JSON.parse(event.data);
}

在同一个文件中,我尝试访问p5.js绘图的数据:

function setup(){ some code here }
function draw() { 
     ellipse(window.sensordata.humidity, 10,10,10)
}

此行window.sensordata.humidity触发

未捕获的类型错误:无法读取未定义的属性“湿度”

这是我尝试过的:

编辑:

标签: javascriptpythonpython-3.xwebsocketp5.js

解决方案


推荐阅读