我正在使用 thingsboard 创建灯光 Controller 。 我需要使用剩余放置请求更改设备的遥测数据(thingsboard)
$.post("http://<ip_here>:8080/api/v1/<device_accesscode_here>/telemetry",{ selectedPreset:2 });
REST 调用可以使用 swagger.io 和 postman 进行工作,但是从小部件或任何其他网页调用时,请求会返回 400。
似乎无法找到解决方案,并且 url 是正确的。我尝试过 $.post 和 $.ajax 样式。
最佳答案
耶!我成功了!
出于某种原因,只有 XHR 方法有效..
var data = "{\"selectedPreset\":\"2\"}";
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("POST", "IP HERE");
xhr.setRequestHeader("cache-control", "no-cache");
xhr.setRequestHeader("postman-token", "33c35ded-140d-e016-fa35-ee8185d7bd44");
xhr.send(mydata);
这是我从 postman 那里直接撕下来的。
关于javascript - 用于设备控制的自定义 Thingsboard 小部件 (REST),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53207360/