【问题标题】:scribe oauth linkedin creat tokenscribe oauth linkedin 创建令牌
【发布时间】:2012-10-09 05:48:41
【问题描述】:

我正在尝试使用 scribe oAuth 插件(在 grails 环境中)。我能够让用户授权我的应用程序并进行身份验证。然后我可以得到 xml 响应。不过,我的问题是如何重新查询用户个人资料,而不必让他们重新授权我的应用程序。一旦他们第一次授权,我就会捕获他们的令牌和密钥。那么,我是否应该能够重新查询个人资料(只要他们不撤销授权。)?我可以使用旧版本的插件来做到这一点。问题在于创建新令牌。如果没有验证程序和请求令牌,我看不到创建授权令牌的方法(这不会存在,因为我的代码在他们的许可下代表他们执行查询。)

如果我尝试像这样创建令牌:

Token accessToken = new Token()
accessToken.secret="XXX"
accessToken.token = "YYY"

我收到初始化错误。

我不能这样创建它,因为我没有请求令牌和验证器:

Token accessToken = service.getAccessToken(requestToken, verifier);
accessTokenSecret = accessToken.secret
accessTokenKey = accessToken.token

如果我没有访问令牌对象,我将无法签署我的请求。完整代码如下所示(假设它们是请求令牌和验证器)

  OAuthService service=new ServiceBuilder()
    .provider(LinkedInApi.class)
    .apiKey(apiKey)
    .apiSecret(apiSecret)
    .build();

    Verifier v = new Verifier(ver);

    Token accessToken = service.getAccessToken(rt, v);
    accessTokenSecret = accessToken.secret
    accessTokenKey = accessToken.token


    OAuthRequest request = new OAuthRequest(Verb.GET, apiUrl);
    service.signRequest(accessToken, request);
    Response response = request.send();
    xmlString=response.getBody();   

感谢您的帮助 杰森

【问题讨论】:

  • 调用service.getRequestToken获取requestToken。然后,您可以将其交换为正确 url 上的验证者。请阅读 OAuth 文档,您至少需要了解完成这项工作的基础知识。
  • 这是我使用的文档:aiten.github.com/grails-oauth-scribe/guide/index.html,但没有看到任何关于我所问内容的参考。这记录在哪里?

标签: grails oauth-2.0 scribe


【解决方案1】:

好吧,过了一段时间,我得到了这个工作:

  public getProfileWithTokens(getAccessToken, getAccessTokenSecret){

    Token newAccessToken = new Token(getAccessToken, getAccessTokenSecret);

    String xmlString =""

    OAuthService service=new ServiceBuilder()
    .provider(LinkedInApi.class)
    .apiKey(apiKey)
    .apiSecret(apiSecret)
    .build();   

    OAuthRequest request = new OAuthRequest(Verb.GET, apiUrl);
    service.signRequest(newAccessToken, request);
    Response response = request.send();
    xmlString=response.getBody();           

}

【讨论】:

    猜你喜欢
    • 2013-03-18
    • 2014-08-19
    • 2012-05-03
    • 2017-12-20
    • 2015-04-25
    • 2016-01-19
    • 2014-05-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多