Iphone 如何创建类似facebook的登录?

Iphone 如何创建类似facebook的登录?,iphone,objective-c,cocoa-touch,web-services,Iphone,Objective C,Cocoa Touch,Web Services,我想在我的应用程序上实现类似facebook的登录。我的想法是我有一个web服务和一个包含登录表单的网页 现在,我希望当一个人从我的iphone应用程序中点击登录按钮时,我的网页弹出。如果身份验证成功,我将关闭iPhone弹出窗口。还有一种可能性是,在成功登录后,将返回一个令牌,我应该能够从我的iPhone应用程序中获取该令牌 如何实现此功能?您需要使用标准的UIWebView在网站上加载登录表单()。您可能需要设置一个委托并等待webViewDidStartLoad或webViewDidFin

我想在我的应用程序上实现类似facebook的登录。我的想法是我有一个web服务和一个包含登录表单的网页

现在,我希望当一个人从我的iphone应用程序中点击登录按钮时,我的网页弹出。如果身份验证成功,我将关闭iPhone弹出窗口。还有一种可能性是,在成功登录后,将返回一个令牌,我应该能够从我的iPhone应用程序中获取该令牌


如何实现此功能?

您需要使用标准的UIWebView在网站上加载登录表单()。您可能需要设置一个委托并等待webViewDidStartLoad或webViewDidFinishLoad—此时您可以检查请求的状态

我会尝试的是,Web服务在失败时重新呈现相同的表单,在成功时呈现一个最小的“加载…”表单,其中包含一些隐藏属性,您可以在应用程序中直接从UIWebView中取出这些属性(例如,令牌或其他登录信息,以便在将来发出请求)。这样,用户可以多次未成功地进行身份验证,但只有当用户成功进行身份验证并具有某些标识符时,您才能继续进入应用程序

如果您不想在web服务返回的实际HTML中隐藏令牌,也可以在设备本身上创建标识符,并在用户发布到web服务时将其包含在表单中。在成功的身份验证中,您可能需要发出第二个请求,以便为您打算发出的任何其他请求获取某种唯一的令牌,但这变得有点复杂


最好的办法可能是尝试最简单的方法,然后询问安全专家如何改进您的交互/协议。

您可能应该指定您的web开发偏好,因为这会带来很大的不同。你一半的问题是如何设置身份验证服务,这是对.net、java、ruby或…的不同回答,我将.net用于我的web服务。我在网络服务方面没有问题,只是在iphone和网页通信上。谢谢你的快速回复。非常感谢。