但有时(到目前为止,超过6个月只有两次)我会经历奇怪的行为:
+ ------------------------------------------------------------------------- + | 1.TRYING TO REFRESH THE TOKEN. | | 2.DONE REFRESHING THE TOKEN. | + ------------------------------------------------------------------------- + | access: **************************************************** | | refresh: ********************************************* | | expires: 3600 | | created: 2013-07-23 13:12:36 | + ------------------------------------------------------------------------- +
我还尝试通过向https://www.googleapis.com/oauth2/v1/tokeninfo发送请求来验证“新”访问令牌
+ ------------------------------------------------------------------------- + | 1. TRYING TO CHECK THE TOKEN . | | 2. DONE CHECKING THE TOKEN THE TOKEN. | + ------------------------------------------------------------------------- + | issued_to: ************.apps.googleusercontent.com | | audience: ************.apps.googleusercontent.com | | user_id: ************ | | expires_in: 3600 | | email: **********@gmail.com | | verified_email: 1 | | access_type: offline | | scopes:: | + ------------------------------------------------------------------------- + | https://www.googleapis.com/auth/userinfo.email | | https://www.googleapis.com/auth/userinfo.profile | | https://www.googleapis.com/auth/plus.me | | https://www.googleapis.com/auth/drive | + ------------------------------------------------------------------------- +
但是当我尝试访问驱动器提要时,响应是:
Error calling GET https://www.googleapis.com/drive/v2/files (401) Invalid Credentials domain: global reason: authError message: Invalid Credentials locationType: header location: Authorization
我们在日历上也遇到了同样的问题。所以:
问题
401: Invalid Credentials
Invalid authorization header. The access token you're using is either expired or invalid.
error: {
errors: [
{
"domain": "global",
"reason": "authError",
"message": "Invalid Credentials",
"locationType": "header",
"location": "Authorization",
}
],
"code": 401,
"message": "Invalid Credentials"
}
}
这与您的错误版本完全匹配,因此很可能是谷歌认为您的请求是错误的。
但是,正如您所知,Google API请求可能返回对实际诊断问题明显无益的错误。由于多种原因,我得到了“无效凭据”错误。这几乎总是真的是因为我做了一些我认为无关紧要的改变,但真的很重要。
我的第一个想法(这里是在黑暗中拍摄的)是去Google API控制台:
Googles auth令牌验证器(https://www.googleapis.com/oauth2/v1/tokeninfo)可以返回一个有效的响应,但可能客户机机密或客户机id已经更改。
即使响应体中的微小变化也会导致此错误。
我不知道您是如何发出请求的,是通过REST调用还是客户端库,但我使用ruby库,它允许命令行接口发出API调用。我发现这一点&OAuth2游乐场在诊断Google API调用方面非常有帮助。
仅供参考:我只从Google API中得到了两个错误:“无效凭据”和“权限不足”。后者几乎总是与糟糕的范围有关。前者只是其他一切。
我还会说,如果你在6个月里只经历了2次错误,你是幸运的!
我有一个问题与Google plus访问令牌。它有时给我“无效凭据”错误消息,有时相同的标记显示为活动。 以下是步骤 是否有验证刷新令牌的方法?
这是代码,我正在重复错误401:身份验证错误
问题内容: 我在这里遇到了我无法理解的被感染的情况。我将要编写的有关功能的文档也没有任何东西可以说明这一点。 我有一张桌子和一个田野。我在巴西,一些在这一领域中的字符有口音,我的目标是没有口音创建一个类似的字段(由原始字符代替,因为这成为等等)。 我可以使用一堆函数像,和其他函数那样来做,但是我在互联网上发现一个接缝看起来更加优雅,然后我使用了它。那就是问题所在。 我的更新代码是这样的: 就像我说
我有以下代码来解析一个JSON文件: 要处理以下JSON文件: 如果我执行此代码,我将收到以下错误: 所以我开始一步一步地调试应用程序,看看part processing()中的哪个代码部分抛出了这个异常。令人惊讶的是,那里的所有代码都正常执行:没有抛出异常,也没有返回结果I except。 更让我惊讶的是,当我稍微改变第一种方法的代码时,它可以在不产生异常的情况下工作。 我不知道println方
当标题[currSlotNo]的值为空时,该行将导致错误: } HomeVu1.VdslotService updVideoSlotData pictureInst:331 Picid[currSlotNo]:331 HomeVu1.VdslotService updVideoSlotData Picmk:331 HomeVu1.VdslotService updVideoSlotData aud
问题内容: 我在GregorianCalendar类中遇到一个奇怪的行为,我想知道我是否真的做得不好。 仅当初始化日期的月份的实际Maximum大于我将日历设置为的月份时,才追加此值。 这是示例代码: 我知道问题是由于日历初始化日期是31天(可能是5月),与设置为2月(28天)的月份混淆了。修复很容易(只需在设置年和月之前将day_of_month设置为1),但是我想知道这确实是想要的行为。有什么