我一辈子都想不出来。
我正在使用Google日历API添加事件,并得到401错误,该错误表示"需要登录"。
我首先使用wamp/localhost离线测试了它,它在一个简单的php文件中运行良好,但一旦我将它移动到一个实时服务器(它使用wordpress,所以我将它构建到一个管理插件中进行测试),它就停止了工作。我仍然可以获得访问令牌(和刷新令牌),但它不断给出错误。
我已经将Auth令牌放入标头中,所有代码都可以脱机工作。
你知道发生了什么事吗?
由于某种原因,似乎没有正确发送标头。
我最终将access_token附加到了url(显然,这可以按照调用Google API部分中的说明完成:https://developers.google.com/accounts/docs/OAuth2WebServer),以及请求开始发回有关无法理解表单编码数据的错误。
即使我在标题中将内容类型指定为application/json,这种情况也会发生。
解决方案:我将代码移到curl,它立即起作用。看起来file_get_contents可能有点挑剔,所以如果你有这个问题,可以试试curl。
希望它能有所帮助!