这是我上一篇文章的延续:Google Contacts data API giving 500 Error。
您可以在上面的帖子中获取我的代码以及我如何调用CURL。以前,我间歇性地得到500错误,但是一旦我使用Google API控制台休息我的client_secret,它暂时被修复了。
但是现在,当我请求访问令牌时,我突然得到 {error:invalid_grant} 。这个错误背后可能是什么原因?
我搜索了几个论坛,他们说这个错误可能是因为在URL本身发送POST参数而不是在POST正文中使用它们。但是,对我来说,似乎我在代码中没有做过那种事情。
此外,没有错误描述以及错误类型。
另一件事,我实际上是 urlencoding 所有参数(例如client_secret,redirect_uri甚至grant_type),这可能是原因吗?
我在日志文件中回显了包含POST参数的$ post变量,它显示如下内容:
code=4%2Fsb898gAIIsd20FQk69yPvASTwN1s
&client_id=33137499441.apps.googleusercontent.com
&client_secret=<client_secret>
&redirect_uri=http%3A%2F%2Fwww.plus-one-me.com%2Foauth2callback&grant_type=authorization_code
随意建议任何更好,更方便的方式来实施Gmail联系人的导入。