HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了使用服务器端身份验证为oauth.io调用提供状态(使用iOS SDK)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用oauth.io与Twitter或Facebook,以及来自iOS应用程序的服务器端身份验证.我可以使用[_oauthio showWithProvider:providerName];连接到服务,连接返回没有错误.但是,我得到的是

oauthtest:// localhost#oauthio = {“status”:“Error”,“message”:“你必须提供服务器端身份验证时的状态”,“提供者”:“twitter”}

换句话说,它需要一个状态参数.但是没有明显的方法可以将其添加到任何地方的呼叫中?有谁知道如何添加这个?

更新:我挖掘了oath.io SDK,并将一个& state = abc拼接到showProviderWith:方法中的URL构造中,但仍然给出了相同的结果:连接成功返回,但内容表示如上所述的错误.

使用不同的提供商Facebook,我得到完全相同的结果(当然,与“提供者”:“Facebook”)

解决方法

好的,通过查看oauth.io Android SDK找到答案:有一个添加状态参数的工具,但它是一个URL编码的JSON对象.因此,在iOS查询字符串中传递它的正确方法是使查询参数opts具有值{“state”:“STATE_HASH_HERE”}.

具有状态值的完整查询字符串将如下所示:

https://oauth.io/auth/twitter?k=\u0026lt;PUBLIC_KEY\u0026gt;
&安培;选择采用= { “状态”: “< STATE_VALUE>” 中}
&安培; REDIRECT_URI = OAuthTest://本地主机

(其中{= {,“=”,:=:和} =}表示JSON对象的百分比编码.)

关键因素是在opt参数内部进行包装.这些都不包含在oauth.io iOS SDK中.

更新:我的pull-request现已合并,并且有一个方法可用于传递选项:[_ aouthio showWithProvider:@“twitter”选项:@ {@“state”:< STATE_VALUE>}];.`

大佬总结

以上是大佬教程为你收集整理的使用服务器端身份验证为oauth.io调用提供状态(使用iOS SDK)全部内容,希望文章能够帮你解决使用服务器端身份验证为oauth.io调用提供状态(使用iOS SDK)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。