ios - 使用 Swift 2 和 WindowsAzureMobileService.framework 在 iOS 客户端上实现 Azure 移动应用程序身份验证(使用 Twitter)(客户端模式)

标签 ios swift azure twitter azure-mobile-services

我正在尝试实现一个 Azure 移动应用程序,并正在使用 Swift 2 开发 iOS 客户端。

我通过 Azure 门户将 Twitter 配置为身份提供商,并尝试使用客户端 token 和 WindowsAzureMobileService 框架对我的 iOS 应用程序进行授权/身份验证;即,我已经在 iOS 客户端上使用了 TwitterKit,并直接通过 Twitter 进行了身份验证,现在想要使用其中的 token 来呈现给 Azure 网关。下面的代码(或者与我实际的 Azure URL 引用类似的代码)编译并运行良好:

if let sessionToken = Twitter.sharedInstance().sessionStore.session()?.authToken {
            let token = ["authenticationToken" : sessionToken]
            let msClient = MSClient(applicationURLString: "https://someapp.azurewebsites.net", gatewayURLString: "https://somegateway.azurewebsites.net", applicationKey: "")
            msClient.loginWithProvider("twitter", token: token, completion: { (user: MSUser?, error: NSError?) -> Void in
                print("User: \(user)")
                print("Error: \(error?.userInfo)")
            })
        }

但是返回错误(error: NSError?)如下

Error: Optional([NSLocalizedDescription: The server returned an error.])

所以我的问题是如何诊断这个问题?我可以在 Azure 门户或其他任何地方获取/设置任何内容吗?还有什么明显的事情表明我做错了吗? (例如,我不确定 token 方向设置是否正确)。

最佳答案

This doc on SSO with AAD指示您使用 access_token 作为 token 的 key 。

您可以尝试更改为使用此代码吗?

let token = ["access_token" : sessionToken]

关于ios - 使用 Swift 2 和 WindowsAzureMobileService.framework 在 iOS 客户端上实现 Azure 移动应用程序身份验证(使用 Twitter)(客户端模式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32933564/

相关文章:

ios - 资源包中的 Xib 仅针对小屏幕编译

ios - 如何从 AppDelegate 启动 View 控件?

Swift 3 UICollectionView 错误

Azure存储: Enable blob versioning on storage account programmatically

azure - Azure 上的服务器端事件响应缓冲问题(ASP.net Core Web 应用程序)

azure - Azure 辅助角色启动期间出现 FSharp.Core 版本错误

ios - 如何在 UISplitViewController 中命名后退按钮

iphone - Float on core-data 的问题

ios - Swift:手势识别器无法识别选择器发送到实例

ios - Firebase:检索为对象/模型。来自 java