我正在尝试将OAuth 2.0实现到computercraft中,为此,我必须提出以下请求:
http.post("https://accounts.google.com/o/oauth2/device/code", "client_id={my id here}&scope=email")
我只是得到了一个Could not connect
错误
在做了一些测试后,我发现http.checkUrl()
可以使用这个url,它可以在终端中使用curl
,http.get("https://accounts.google.com")
也可以。看起来唯一不起作用的原因是computercraft没有正确处理POST
请求。
奇怪的是,http.get("https://accounts.google.com/o.oauth2/device/code")
也不能工作,这真的很令人困惑。尽管这不是一个有效的请求,但它应该会成功,并返回{"error":"Invalid request"}
响应,当我使用curl
时,它就会成功。
这里是我做错了什么,还是有一些工作要做?
发布于 2016-05-05 20:16:34
根据您的配置,您可能需要启用ComputerCraft HTTP API。或者,您可能需要将accounts.google.com域列入白名单。您也可以完全禁用白名单,如果它是启用的。
您可以在config\ComputerCraft.cfg文件中找到它的设置。
HTTP帖子确实起作用了。不过,我对HTTPS不是百分之百的确定。
发布于 2016-07-24 08:02:56
用于调试设置os.PullEvent()
使用http_failure进行排序
如果仍然不起作用,请更改config\ComputerCraft.cfg中的白名单
whitelist = *
或其他任何配置格式
https://stackoverflow.com/questions/36120572
复制相似问题