Oauth突然没有在iPhone上工作(只安装了FS应用程序)
我们的iPhone应用程序允许通过Foursquare通过oauth登录。 它工作正常,最近停止工作。
我们得到的错误是: 连接失败:回调uri不适用于此用户。
但是,如果用户没有安装在手机上的foursquare应用程序,它可以像以前一样正常工作。 看起来好像FS现在正在做一个重定向来处理FS应用程序中的oauth,并且在尝试返回到原始应用程序时失败。 它通过safari似乎工作。
这是在ios 9上。
解决方案? 谢谢!
我们改变了使用SafariViewController,这似乎迫使Foursquare不去这种奇怪的应用内重定向,解决了这个问题。 这也是苹果公司首选的oauth方法,所以可能要走。
在Foursquare方面似乎仍然存在问题,但他们可能想为其他人解决问题。 我正在关闭这个问题。 谢谢。
你的重定向网址在哪里指向? 如果您希望在完成后启动您的应用,则应指向您的应用的iTunes商店(iOS9之前)链接或通用链接(iOS9以上)。
有关原生foursquare应用重定向的更多信息,请参见自述文件:https://github.com/foursquare/foursquare-ios-oauth/
如何在iOS9中创建通用链接 https://www.appsflyer.com/blog/how-to-set-up-ios-9-universal-links-for-your-app/
回调网址是在您的网络应用程序通过验证后加载的网页。 在这种情况下,您需要指定一个页面以便在验证后发送数据
仔细检查您的Foursquare凭据并将回调uri更新为有效的链接。 教程链接
请遵循以下几点,可能会解决您的问题: -
在addcallback方法中输入foursquare帐户中的回调。 然后在您的代码中,在您授权之前将呼叫添加回提供商。 (请参考这里)。
您收到该错误是因为您指向用户的网址(foursquare.com/oauth2/ ...)包含一个redirect_uri
参数,该参数与您在https:// foursquare下的应用设置中配置的内容不匹配.COM /开发/应用程序。 确保这些匹配!
上一篇: Oauth suddenly not working on iphone (with FS app installed only)