我们可以在Native iPhone App中实现openID选项吗?

时间:2010-08-10 12:24:29

标签: iphone openid

可以在iPhone中实现OpenId身份验证吗?我找到了一个名为janrain的框架。但是通过免费注册,我们只能使用功能。是否有其他开源框架可供使用?

谢谢!

1 个答案:

答案 0 :(得分:23)

我找到了一个使用标准UIWebView来处理身份验证的解决方案。由于cookie是在应用程序内共享的,因此使用UIWebView(存储会话或身份验证cookie)的成功身份验证将转移到其他请求。

我没有正式的框架,但它的工作原理如下:我发出一个REST请求。如果请求返回一个JSON字符串,那么我已经过身份验证,一切都很好。如果请求返回重定向(即301),则该站点正在尝试重定向以进行身份​​验证。在这里,我停止重定向并呈现带有登录页面的模态UIWebView。用户可以使用他们的OpenID登录,一旦用户通过身份验证,就会被重定向到预定的成功URL。

UIWebView -(void)webViewDidFinishLoad:(UIWebView *)webView委托方法在加载后检查每个URL,并在看到成功URL被请求后解除模态。

基本上我是这样做的,似乎有效。