jquery – 存储和发送不在PhoneGap应用程序中工作的http Cookie

前端之家收集整理的这篇文章主要介绍了jquery – 存储和发送不在PhoneGap应用程序中工作的http Cookie前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在Xcode中开发一个PhoneGap应用程序,它使用web api与服务器通信。 api接受标准http请求。作为用户认证过程的一部分,设置了一个cookie,该Cookie被设置为在每个后续请求到api的http标头中发送。

在对api的登录呼叫期间,我可以清楚地看到,作为响应头的一部分,正在发送一个cookie。然而,它似乎不存储,也不会在每个新的api调用的http请求头中发送。

调用api,我使用jQuery的$ .getJSON调用

我发现以下问题和答案:phonegap: cookie based authentication (PHP) not working [webview]

上面的答案建议在应用程序委托的init中将NSHTTPCookieStorage cookieAcceptPolicy设置为NSHTTPCookieAcceptPolicyAlways。我已经尝试过,似乎并没有解决这个问题。另外,根据Apple’s documentation,默认的cookieAcceptPolicy是NSHTTPCookieAcceptPolicyAlways。

关于如何获取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存储可以令人沮丧的时候。

原文链接:https://www.f2er.com/jquery/182636.html

猜你在找的jQuery相关文章