我有一个网站的登录系统,我正在启动一个 PHP session 服务器端并在 PHP 中创建一个 cookie,用于在我稍后回来时恢复 PHP session 。
我正在尝试将我的代码重用为 iOS 应用程序的后端,但我很难理解它是如何工作的。
我已经设置了以下 cookie 管理器,据我所知,这应该会随我的请求发送 cookie。
NSHTTPCookieStorage *cookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage];
[cookieStorage setCookieAcceptPolicy:NSHTTPCookieAcceptPolicyAlways];
我不需要从 iPhone 设置任何 cookie,我只需要确保我对 php 文件的请求允许这些脚本访问 cookie。
我错过了什么吗?
最佳答案
之前问过类似的问题:Persisting Cookies In An iOS Application?
本质上,您需要将 cookie 数据保存在某个地方。它可以只是一个使用类似这样的文件:
[NSKeyedArchiver archiveRootObject:cookies toFile:dataFilePath];
在这种情况下,您将返回带有类似内容的 cookie 数据:
NSFileManager *filemgr = [NSFileManager defaultManager];
NSArray *cookies = [NSKeyedUnarchiver unarchiveObjectWithFile:dataFilePath];
for (cookie in cookies) {
[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie];
}
您的真实场景将决定处理此问题的最佳方式,但希望以上内容能让您朝着正确的方向思考。
关于php - 使用 cookie 登录 iOS Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8389203/