【发布时间】:2022-01-06 11:46:31
【问题描述】:
我有一个活动,如果凭据正确(用户和通过),我会从标题中获取“Set-cookie”,并使用 post 方法验证它们是否存在于我的网站上,并将它们存储在 SharedPreferences 中,这对我来说是正确的,但是当我尝试在 webview 中设置 cookie 时,它根本无法识别它,我尝试了几种方法,仍然让 webview 与用户的会话一起加载。
你就是这样
params["name"] = User.text.toString()
params["pass"] = Password.text.toString()
val request = AuthUserClass(Request.Method.POST,url,jsonObject,
Response.Listener { response ->
val headers = response.getJSONObject("headers")
val setCookie = headers.getString("Set-Cookie")
}
现在我存储在共享首选项中
val sharedpreferences =getSharedPreferences("Set-Cookie",Context.MODE_PRIVATE)
val edit =sharedpreferences.edit()
edit.apply{
edit.putString("Set-Cookie",setCookie)
}.apply()
edit.commit()
最后我尝试在 webview 中设置 cookie
val cookieManager = CookieManager.getInstance()
cookieManager.acceptCookie()
val cookieKey= getSharedPreferences("Set-Cookie", Context.MODE_PRIVATE)
cookieKey.getString("Set-Cookie","")
val domain = urlCookie
cookieManager.setCookie(domain,"$cookieKey")
cookieManager.setAcceptThirdPartyCookies(binding.webView,true)
我不知道我做错了什么请帮帮我
【问题讨论】:
标签: android kotlin cookies webview hybrid-mobile-app