【问题标题】:Instagram Auth Broken?Instagram 身份验证损坏?
【发布时间】:2016-10-24 19:39:16
【问题描述】:

我们刚刚注意到,我们依赖 Instagram 作为主要登录名的应用程序不再工作。在进一步调查时,Instagram 的回调 URL 似乎停止工作。现在,每当有人通过 Instagram 登录或通过 Instagram 注册时,他们都会被带到 Instagram 应用程序,而不是被要求进行身份验证或进入我们的应用程序体验。

我检查了另一个我知道的名为“Print Studio”的应用程序,同样的事情也发生在他们身上。

这个问题是否发生在其他人身上?关于导致它的任何线索,有没有人从 Instagram 听到可能的修复?

【问题讨论】:

标签: api oauth instagram


【解决方案1】:

是的。似乎影响所有应用程序(至少是使用批准的第 3 方 API 的应用程序)。几天前我看到了这个问题,它自己解决了。我认为 Instagram 工程师正在推出一些更新并破坏了一些东西。

我建议从开发者门户报告问题。 https://www.instagram.com/developer/clients/manage/。他们收到的报告越多越好。

更新:

该问题似乎与在 Instagram 端进行的 cookie/会话持久性更改有关。 要解决此问题,请在检测到用户访问 Instagram 主页时将用户重定向到原始身份验证 URL。因为用户已经登录,这应该将用户传递到正确的重定向 url 而无需再次登录。

例如,在 swift 中:

  // MARK: - WKNavigationDelegate
  override func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {

   if let urlString = navigationAction.request.url?.absoluteString {

     if urlString == "https://instagram.com" || urlString == "https://instagram.com/" ||
      urlString == "https://www.instagram.com" || urlString == "https://www.instagram.com/" ||
      urlString == "http://instagram.com" || urlString == "http://instagram.com/" ||
      urlString == "http://www.instagram.com" || urlString == "http://www.instagram.com/" {

        decisionHandler(.cancel)
        self.refresh(nil) // reloads the original auth url
        return
      }
    }

    super.webView(webView, decidePolicyFor: navigationAction, decisionHandler: decisionHandler)
  }

【讨论】:

  • 是的,我今天早些时候报道过。还没有解决,但我希望它会是明天。当您说它自行解决时,也就是说您当前正在使用 OAuth 并且回调 URL 正在按预期工作?太奇怪了。
  • 是的。几天前最后一个问题发生后,回调 URL 开始正常工作。如果您有兴趣,我在上面发布了一个解决方法
  • 你是个可爱的王子,阿波拉特
  • @aporat 我也面临同样的问题。如果 Instagram 修复问题,此重定向是否有任何副作用?我想知道我是否应该更新应用程序...
  • @Alin 如果是你,我会等你,同样的问题,但我不确定解决方法是否是最好的方法
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-29
  • 2013-09-02
  • 2019-06-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多