首页 > 解决方案 > 使用 twitter 登录总是返回错误

问题描述

我正在尝试使用 twitter 添加登录,但有些我无法获得响应。每次我收到错误消息(获取用户身份验证令牌时出错)。我知道有很多这样的帖子有这个问题,但我无法登录。我也尝试提前设置,但我的会话为零。我还重新生成了消费者密钥和秘密,但没有运气。使用 Swift 3.0

这是我的代码

TWTRTwitter.sharedInstance().logIn(with: self) { (session, error) in
     if (session != nil) {
     print("signed in as \(session?.userName ?? "")");
            } else {
                print("error: \(error?.localizedDescription ?? "")");
            }
     }

信息列表

在此处输入图像描述

应用委托

 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        _ = DBSingleton.sharedInstance
        TWTRTwitter.sharedInstance().start(withConsumerKey:TwitterKey.consumerKey, consumerSecret:TwitterKey.consumerSecret)
}

附上日志截图

更新: 如果我们有应用程序,那么它可以正常工作,但如果没有,它会返回错误。

标签: iosswifttwitterkit

解决方案


经过大量的研发,我取得了成功。Twitter 已强制要求回拨网址。我从这个链接找到

您需要在 twitter 仪表板设置的回调 url 中添加 twitterkit-xxxxxxxxxxxxxxx (twitterkit-consumer key)。

我用这个方法打开了 safari(确保你添加了 safari 框架)

TWTRTwitter.sharedInstance().logIn(with: self) { (session, error) in
            if (session != nil) {
                print("signed in as \(session?.userName ?? "")");
            } else {
                print("error: \(error?.localizedDescription ?? "")");
            }
        }

推荐阅读