【问题标题】:DropBox IOS SDk retrieving access token and secret is invalid once user is Authenticated用户通过身份验证后,DropBox IOS SDK 检索访问令牌和机密无效
【发布时间】:2012-09-20 17:56:20
【问题描述】:

没有发生使用访问令牌和密钥对 Dropbox 用户的交叉身份验证。

详细说明我的问题:

  1. 在我的 IOS 应用中验证用户身份
  2. 在 Ios 应用程序中,我从 MPOAuthCredentialConcreteStore *credentials 检索访问令牌和密码。
  3. 从 credentials->acccessToken 获取访问令牌,同样获取 secret。

  4. 现在,如果我将这些值输入到 IOS 之外的另一个应用程序中,该应用程序使用 python sdk 作为保管箱。我收到一条错误消息“无效令牌”。

但是,有趣的是,从第 1 步到第 4 步的逆过程有效。即从 python SDK 获取访问令牌和秘密,并使用

将其提供给我的 IOS 应用程序
[dbSession updateAccessToken:@"xxxxxxxxx" accessTokenSecret:@"YYYYYYYYYYY" forUserId:@"12345678"];

现在我可以评估用户的保管箱帐户了。关于出了什么问题的任何想法? MPoauth 和 Oauth 之间有区别吗?我相信 MPoauth 只是一个包装器,对吧?

还有其他方法可以获取访问令牌和密码吗?

感谢您的帮助。

【问题讨论】:

  • 你怎么得到访问令牌crediantials.accessToken为我返回null
  • 我猜你在错误的地方访问它。在loadedAccountInfo() 函数中执行。
  • @Alibaba 我也有同样的问题。您能否详细说明我将在哪里获得新的 auth2 访问令牌?

标签: ios5 dropbox dropbox-api


【解决方案1】:

我找到了解决这个问题的方法。这是一个简单的错误。基本上我使用的编辑器在最后添加了一个新行字符。对于遇到相同问题的人,请确保最后没有换行符。

【讨论】:

    【解决方案2】:

    您可以使用此委托获取您的Access token

    (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *) url {
    
        if ([[DBSession sharedSession] handleOpenURL:url]) { 
            if ([[DBSession sharedSession] isLinked]) { 
                // At this point you can start making API calls
    
                NSLog(@"App linked successfully!");
    
            }
            // Add whatever other url handling code your app requires here 
         } 
    
         return NO;
     }
    

    给定的 url 有访问令牌、秘密令牌和用户 ID

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-04-11
      • 2014-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-07
      • 2014-07-26
      相关资源
      最近更新 更多