首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >401令牌无效- AuthSub令牌有错误的范围

401令牌无效- AuthSub令牌有错误的范围
EN

Stack Overflow用户
提问于 2017-09-19 10:30:26
回答 1查看 99关注 0票数 0

我在react中有应用程序,从那里我认证谷歌用户并返回access_token,我将访问令牌传递给rails API。

现在,在rails方面,我使用的代码来自get google联系人。

代码语言:javascript
复制
 contacts_josn = JSON.parse(open("https://www.google.com/m8/feeds/contacts/default/full?access_token="+params[:access_token]+"&alt=json").read)

但它还我的错误

代码语言:javascript
复制
#<OpenURI::HTTPError: 401 Token invalid - AuthSub token has wrong scope>

更新:建议的答案与我的问题不同,我使用的是谷歌联系人API。

(如有任何建议,将不胜感激:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-19 12:42:15

我解决了问题,这是access_token中的范围问题

当我从react生成access_token时,我没有给出任何范围。在后端,我使用access_token来获取联系人

所以我做的是

在反应中

代码语言:javascript
复制
<GoogleLogin
        className="pull-right btn btn-orange add-new-btn"
        clientId={process.env.REACT_APP_GOOGLE_CLIENT_ID}
        scope="email https://www.google.com/m8/feeds/"
        buttonText="Import google contacts"
        onSuccess={this.responseGoogle}
        onFailure={this.responseGoogle}
      >

添加了用于电子邮件访问的范围email和用于管理联系人的https://www.google.com/m8/feeds/

钢轨侧

代码语言:javascript
复制
contacts_josn = JSON.parse(open("https://www.google.com/m8/feeds/contacts/default/full?max-results=50&alt=json", "Authorization" =>  "Bearer #{params[:access_token]}", "GData-Version" => "3.0").read)

现在这将返回联系人列表。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46298152

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档