小编典典

phonegap:基于cookie的身份验证(PHP)不起作用[webview]

ajax

我正在使用sencha touch,HTML5和phonegap作为包装的移动Web应用程序。

我正在使用PHP身份验证(Cookie)和ajax请求。一切都可以在Safari或chrome上正常运行,但是在通过phonegap(webview)进行部署后,它不再起作用了…

任何帮助,将不胜感激 :)

一些更多的细节:

我的应用程序的所有数据都通过ajax请求加载到服务器组件“ mobile.php”。我使用基本的PHP-Auth来使用户满意:

  1. AJAX请求[用户名,密码]-> mobile.php->会话建立(cookie)
  2. 所有其他请求(如果身份验证成功)

正常的野生动物园网站和Webview有什么区别?


阅读 261

收藏
2020-07-26

共1个答案

小编典典

我想到了:

您必须更改phonegap_delegate.m文件,并将以下内容添加到init方法中:

- (id) init
{   
    /** If you need to do any extra app-specific initialization, you can do it here
     *  -jm
     **/
    //special setting to accept cookies via ajax-request
    NSHTTPCookieStorage *cookieStorage = [NSHTTPCookieStorage 
                                          sharedHTTPCookieStorage]; 
    [cookieStorage setCookieAcceptPolicy:NSHTTPCookieAcceptPolicyAlways];

    return [super init];
}

它使webview能够接受来自ajax请求的cookie

2020-07-26