错误401 Arduino ESP8266

57次浏览(最近30天)
Ctreb
Ctreb 2020年1月18日
你好,
我尝试从我的ESP8266张贴一些值到thingspeak,但它失败了与401错误。
为了确保错误不在我的代码中,我加载了示例代码“WriteMultipleFields”,没有做任何更改,创建了一个新的通道,并多次更新API密钥。
这是错误信息:
连接。
ts::setField(字段:1 value: "0")
ts::setField(字段:2 value: "3")
ts::setField(字段:3 value: "31")
ts::setField(字段:4 value: "88")
ts::setStatus(status: field1小于field2)
连接到默认的ThingSpeak: api.thingspeak.com:80…成功。
ts::writeFields (channelNumber: 964373 writeAPIKey: XXXXXXXXXXXXXXXX
获得状态200
内容长度:1
联头找到端
回应:“0”
条目ID“0”(0)
断开连接。
问题更新频道。HTTP错误代码-401
你有什么建议吗?

接受的答案

维诺德
维诺德 2020年1月22日
您是否仍然看到更新通道请求的响应代码为“0”?
1评论
Ctreb
Ctreb 2020年1月22日
谢谢,statuscode 2现在和更新工作的预期。

登录评论。

更多的答案(5)

克里斯托弗Stapels
克里斯托弗Stapels 2020年1月21日
编辑:克里斯托弗Stapels 2020年1月22日
你能从浏览器更新你的频道吗?
使用格式
https://api.thingspeak.com/update?api_key=xxxxxxxxxxxxxxxx field1 = 432美元
错误代码 你可以看到401是需要授权的页面。因为ThingSpeak有很多API密钥,所以很有可能你抓错了密钥。确保它是从通道视图的api键表写入的通道api键。
让我们知道这是否有效。如果没有,我们可以进一步研究。

Ctreb
Ctreb 2020年1月21日
你好,
响应代码0,没有更新。

大卫的鸟
大卫的鸟 2020年3月23日
编辑:大卫的鸟 2020年3月23日
你好,
当使用Bulk更新API时,我还收到401个授权错误:
增量时间版本工作正常:
:“write_api_key write_api_key”,
“更新”:[{
“delta_t”:4
“field1”:1.0,
“field2”:“2.0”
},
“delta_t”:2
“field1”:1.1,
“field2”:2.2,
“海拔”:6,
“状态”:“好”
但绝对时间版本没有:
:“write_api_key write_api_key”,
“更新”:[{
"created_at": "2020-03-23 09:26:02 -0000",
“field1”:“1.0”,
“field2”:“2.0”
},
"created_at": "2020-03-23 10:27:27 -0000",
“field1”:“1.1”,
“field2”:“2.2”,
来自服务器的JSON响应是:
{"status":"401","error":{"error_code":"error_auth_required","message":"Authorization Required","details":"Please provide proper authentication details."}}
因此,在增量时间版本中,通道ID和写密钥是正确的和授权的,但在绝对时间变体中,它们似乎失败了。我使用
我注意到其他人也看到了同样的问题。看起来有一个API问题。
1评论
克里斯托弗Stapels
克里斯托弗Stapels 2020年3月23日
第二个例子中多了一个逗号:
“field2”:“2.2”,
应该是
“field2”:“2.2”
当我发送时不加逗号,就可以了。(使用我的写入密钥和通道ID)。
当我用逗号发送时,我得到的错误是400,而不是401。你能不能再检查一遍并报告是否仍然看到那个错误?我们肯定希望返回正确的错误。

登录评论。


大卫的鸟
大卫的鸟 2020年3月23日
实际上这是API的一个例子,我删除了一个字段,因此留下了迷乱的',',抱歉。这是我上传的一份:
:“write_api_key write_api_key”,
“更新”:[{
"created_at": "2020-03-23 19:01:26 -0000",
“field1”:20.0,
“field2”:51.7,
“field3”:1026
},
"created_at": "2020-03-23 19:02:28 -0000",
“field1”:20.1
“field2”:51.7
“field3”:1026
其中返回401授权要求。
7评论
克里斯托弗Stapels
克里斯托弗Stapels 2021年4月19日
@David鸟 在上面的最新版本中,您似乎缺少API密钥。

登录评论。


关于柯西莫Carbonelli
关于柯西莫Carbonelli 2020年7月25日
对不起,我也有同样的问题。
:“write_api_key MYAPIKEY”,
“更新”:[{
"created_at": "2020-07-24 11:34:28 -0738",
“field2”:-68年,
“field3”:25.4,
“field4”:1005年,
“field5”:118年,
“field6”:0,
“field7”:0
})
得到的误差是
“状态”:“401”,
"错误":{
:“error_code error_auth_required”,
“消息”:“授权”,
“details”:“请提供正确的认证信息。”
但是如果我使用
没关系。
怎么了?
非常感谢
关于柯西莫
1评论
关于柯西莫Carbonelli
关于柯西莫Carbonelli 2020年7月26日
你好,
我自己找到了答案。
问题在于我构建json变量的方式(在我的Node RED环境中)。所以这是一个JavaScript问题,而不是ThingSpeak API的问题。
对不起
关于柯西莫

登录评论。

社区

更多答案请参阅ThingSpeak社区

s manbetx 845


释放

R2019b

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!