ajax - 电话间隙 : cookie based authentication (PHP) not working [webview]

标签 ajax cookies ios webview cordova

我正在使用 sencha touch、HTML5 和 phonegap 作为包装器开发移动网络应用程序。

我正在使用 PHP 身份验证 (Cookie) 和 ajax 请求。在 safari 或 chrome 上一切正常,但在使用 phonegap (webview) 部署后它不再工作了......

任何帮助将不胜感激:)

更多细节:

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

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

普通的 safari 网站和 webview 有什么区别?

最佳答案

我想通了:

您必须更改 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

关于ajax - 电话间隙 : cookie based authentication (PHP) not working [webview],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3709315/

相关文章:

javascript - 从 .php 页面获取 JSON 数据并将其存储在全局变量中

objective-c - 没有 key 的 SBJson 解析

javascript - 使用 Ajax 刷新表数据在 django 中不起作用

javascript - AJAX - POST ' data:' - Uncaught Error - 意外的标识符

javascript - 如何将 document.cookie 替换为 Cookies.set (使用最新的 jquery cookie 插件)

internet-explorer - 当路径重叠时,Internet Explorer 发送错误的 cookie

ios - JSONDecoder 总是返回 "No value associated with key CodingKeys"

java - 架构 arm64 的 undefined symbol : Failed to build RoboVM/LibGDX project

javascript - 多个 Ajax 调用?

python - 用 Python 构建 Web 浏览器和有关 cookie 的问题