【问题标题】:iOS Twitter NSURLErrorDomain Code=-1012iOS Twitter NSURLErrorDomain 代码=-1012
【发布时间】:2013-01-16 16:06:23
【问题描述】:

我正在尝试通过在我的应用中使用 twitter 来获取用户的联系方式。我在 github 上找到了 this 项目,看起来非常好。我只遇到一个问题。如果我使用来自 twitter 的新应用程序消费者密码和消费者密钥代码运行它,它会给我一个错误:

Error Domain=NSURLErrorDomain Code=-1012 "The operation couldn’t be completed. (NSURLErrorDomain error -1012.)" UserInfo=0x6898e80 {NSErrorFailingURLKey=https://api.twitter.com/oauth/request_token, NSErrorFailingURLStringKey=https://api.twitter.com/oauth/request_token, NSUnderlyingError=0x68980e0 "The operation couldn’t be completed. (kCFErrorDomainCFNetwork error -1012.)"}

控制台的输出是:

2013-01-16 17:55:24.367 DMTwitterOAuth[3411:c07] current status = Prompt for user data and request token to server
2013-01-16 17:55:24.371 DMTwitterOAuth[3411:c07] current status = Requesting token for current user's auth data...
2013-01-16 17:55:25.433 DMTwitterOAuth[3411:c07] current status = Token received from server

在我收到警报视图后立即显示它遇到了NSURLErrorDomain

另一方面,如果我使用来自另一个 twitter 应用程序的一些其他代码运行它,它可以工作,为我提供有关用户的所有详细信息。我只是不明白为什么某些键有效,而另一些则无效。

【问题讨论】:

    标签: ios twitter nsurlrequest nsurlerrordomain


    【解决方案1】:

    错误代码-1012kCFURLErrorUserCancelledAuthentication。这应该意味着某个名为[sender cancelAuthenticationChallenge:] 的代码响应身份验证质询。这可能是 DMTwitterOAuth 内部的代码,但也有可能是 URL 加载系统内部的 Apple 自己的代码。

    【讨论】:

      【解决方案2】:

      确保您的推特 application access settings 适合您正在尝试做的事情。如果您尝试发布推文,您可能需要读取和写入权限。

      请参阅Application Model docs 了解更多信息。

      【讨论】:

      • 错误代码 -1012 可能是由于身份验证质询。就我而言,设置中存在一个 Twitter 帐户,但由于某种原因没有登录。输入帐户密码后,一切正常。
      【解决方案3】:

      也可能是请求头中的身份验证数据错误。

      【讨论】:

        【解决方案4】:

        访问下面的 url 它解决了通常不是特定于这个 twitter 上下文的问题。它会给你一些想法

        https://stackoverflow.com/a/17920301/730807

        希望对你有帮助。

        【讨论】:

          【解决方案5】:

          我最近在以前使用 Twitter 登录的项目中发现了这个问题。出于这个原因,我认为这是由于 iOS 的变化或 Twitter 功能的升级。

          其中一个主要问题是几乎不可能重现此问题,这里有一个非常有趣的 twitter 社区博客在谈论它:https://twittercommunity.com/t/ios-twitter-kit-1-10-1-twtrloginbutton-responds-with-1012-error/52766

          Twitter 工作人员正在尝试解决此问题,但无法重新创建它以查看问题所在。

          问题似乎是用户的 Twitter 帐户已与他们的设备断开连接。这意味着 Twitter Auth Helper 无法获取您的详细信息以正确登录。

          解决此问题的方法是进入设置 -> Twitter,然后单击您的 Twitter 帐户名称。对我来说,这提示我重新输入密码,因为该帐户当前未连接。非常令人沮丧且很难找到,因为在您点击您的 Twitter 帐户之前没有任何指示。

          我发现在尝试使用 Firebase 使用 Twitter 帐户登录时应用了此解决方案。

          【讨论】:

            【解决方案6】:

            根据 Twitter,the fix is live 在 SDK 版本 1.14.1 中。

            【讨论】:

              猜你喜欢
              • 2015-05-05
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2016-02-06
              相关资源
              最近更新 更多