我正在编写iPhone应用程序。我的(现有)Web应用程序使用Ruby on Rails(2.3.2)来提供数据。 Ruby on Rails后端使用restful-authentication gem来验证用户身份。
要将用户数据从服务器获取到iPhone应用程序,我使用HTTPRiot框架并使用HTTPBasicAuthentication对用户进行身份验证。
现在一切正常 - 用户可以在iPhone应用程序中获取和发布一些数据。但是当我想从服务中注销用户时,似乎是不可能的。从不同的主题我明白注销只是没有在HTTPBasicAuthentication中实现,我完全没问题。我试图找到一个解决方法,比如在Settings.app中实现一个开关,强制我的应用在用户返回应用时显示登录屏幕。
问题是:iOS4在应用程序进入后台时保持连接类型“打开”。要从HTTPBasicAuthenticated连接注销,需要断开此连接。使用这种方法,我的用户需要退出应用程序,在Settings.app中打开开关,从多任务中删除我的应用程序并再次启动我的应用程序。这太脏了。
我的问题是:在没有完全离开应用程序的情况下,是否有更简洁的方法来注销/更改用户?
部分参考文献:HTTPRiot,Logout and basic auth,Logout and basic auth 2