有效地尝试使用一个名为Things.io的API-当前,我正在php页面上使用硬编码输入,我的nodered正在发布以将XMLHTTPRequest发送到apis网络(只是确保它不是我的输入)那是错误的。)
如果我直接进入网页,它将成功调用api并将其记录在他们的平台上,因此部分代码似乎可以正常工作。
但是,如果我对同一页面执行XMLHTTPRequest,则不会抛出任何错误-但这也不会成功调用该API。我可以在调试区域中看到我页面的内容,只是没有调用。
红色节点上的新功能,很抱歉出现任何愚蠢的错误,代码如下:
<script>
window.onload = function(){
var test = "<?php echo htmlspecialchars($_GET["name"]) ?>";
var temperature = test.substring(test.indexOf("ID: 1, Temperature: ")+20, test.indexOf("*C"));
var humidity = test.substring(test.indexOf("Humidity")+10, test.indexOf("%"));
var data = JSON.stringify({
"values": [
{
"key": "temperature",
"value": 17
},
{
"key": "humidity",
"value": 34
}
]
});
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://api.thethings.io/v2/things/ /* this is being censored sorry :P /* ?store=true");
xhr.send(data);
}
</script>
答案 0 :(得分:0)
好吧,只需跳过代码的这一部分即可-接受原始信息-将其发送到nodeRed函数
%P
然后将其发送到主要地址。