每次我调用它时都会显示OAuth.io模式对话框,即使我设置了缓存选项(参见:在这里使用缓存)。下面是我的基于Swift的应用程序的代码片段:
let options = NSMutableDictionary()
options.setObject("true" as NSString, forKey: "cache")
let oauthModal: OAuthIOModal = OAuthIOModal(key: config?.valueForKey("oauth_key") as String!, delegate: self, andOptions: options)
if (!oauthModal.cacheAvailableForProvider(self.provider)) {
oauthModal.showWithProvider(self.provider)
}对话框显示得很好,我能够遍历整个流程,但是cacheAvailableForProvider从不返回true。我确认我的应用程序能够在缓存目录中创建文件,但是在模拟器中运行它之后,我从未看到创建了一个oauthio-provider.json文件。
注意:第二次弹出对话框时,Safari确实记得我登录了提供者,但我的印象是缓存应该阻止对话框一起弹出。
我做错了什么?
发布于 2014-10-30 18:02:40
在查看了您的代码之后,我意识到您将包含缓存字段的options字典交给了OAuthIOModal构造函数。
您应该将此字典交给oauthModal.showWithProvider方法,如下所示:
modal.showWithProvider(self.provider, options:options)希望这能帮到你
祝您今天愉快。
https://stackoverflow.com/questions/26612838
复制相似问题