小编Jbe*_*dev的帖子

Cookie不会存储在Android Webview API 21及更高版本中

背景:

Webview在API 21中遇到了一个非常令人困惑的行为,在真实设备中进行测试时.

我有一个本地HTML5应用程序(内部资产文件夹)具有以下功能

  • 登录(2步验证).
  • 根据身份验证显示项目列表.

问题:

执行登录请求后,服务器返回会话cookie.Webview使用API​​ 21或更高版本的真实设备时,此cookie不会存储.如果我使用模拟器(在本例中为Genymotion),则会正确存储cookie.

更多信息:

执行身份验证的请求具有以下标头:

POST http://myServer/j_spring_security_check HTTP/1.1
Proxy-Connection: keep-alive
Content-Length: 101
access-control-allow-origin: *
accept: application/json
access-control-allow-credentials: true
User-Agent: Framework/1.5.0 (Linux; U; Android 6.0.1; Nexus 5X Build/MMB29Q) App/0.1.1
Origin: file://
content-type: application/x-www-form-urlencoded
Accept-Language: en-US
X-Requested-With: app.package
Host: myServer
Run Code Online (Sandbox Code Playgroud)

通过以下回复:

HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Set-Cookie: JSESSIONID=4D169E8656DBEDFFA4D17FE8D436A5BA; Expires=Fri, 19-Feb-2016 14:27:55 GMT; Path=/; HttpOnly
Content-Type: application/json;charset=UTF-8
Content-Length: 43
Date: Fri, 19 Feb 2016 14:17:55 GMT …
Run Code Online (Sandbox Code Playgroud)

cookies android http webview angularjs

5
推荐指数
1
解决办法
1054
查看次数

标签 统计

android ×1

angularjs ×1

cookies ×1

http ×1

webview ×1