Bri*_*ngo 19 jquery ios cordova
我正在Xcode中开发一个PhoneGap应用程序,它使用web api与服务器通信.api接受标准的http请求.作为用户认证过程的一部分,设置了一个cookie,该cookie应该在http报头中传输,并随后向api发送每个请求.
在登录api的过程中,我可以清楚地看到cookie作为响应头的一部分被发回.但是,它似乎没有被存储,也没有在每次新的api调用的http请求头中发送.
为了调用api,我正在使用jQuery的$.getJSON调用.
我发现以下问题和答案:phonegap:基于cookie的身份验证(PHP)无法正常工作[webview]
上面的答案建议在app委托中设置NSHTTPCookieStorage cookieAcceptPolicyto .我试过了,似乎没有解决问题.此外,根据Apple的文档,默认是.NSHTTPCookieAcceptPolicyAlwaysinitcookieAcceptPolicyNSHTTPCookieAcceptPolicyAlways
关于如何获取cookie存储和发送工作的建议非常感谢.
CookieStorage 应该并且确实保存 cookie,以便在后续请求中使用。如果您使用 NSURLRequest 等,它甚至会自动添加它们...但前提是它与 cookie 上设置的域相同。
我以前也遇到过很多次类似的问题
可能的原因可能是:
1) cookie 的域与您在请求中发送的域不同,可能是由于重定向所致...例如,如果请求发送到http://www.somesite.com,则实际上重定向到http:// /somesite.com(这是真正的域名,cookie 将为 sometime.com url/domain 保存,现在为 www.somesite.com
2) cookie 上的“仅会话”和“到期日期”标头可能设置不正确,这会导致 cookie 存储丢弃它们
希望这会有所帮助,根据经验知道 cookie 存储有时会令人沮丧。
| 归档时间: |
|
| 查看次数: |
4185 次 |
| 最近记录: |