如何在request中加入cookie?

如何在request中加入cookie?,第1张

在request中加一个键/值对,

request.setAttribute("key","cookie信息")

用的时候,request.getAttribute("key")

httppost添加cookie的方法具体如下:

第一种

HashMap map = new HashMap()

map.put("cookie","p1u_id=4eb591e73554db0f4d3300cb656113abfb968ef6b0ee2b5de0a35caa5217c51faa028b453576b35c")

networkConnection.setHeaderList(map)

NetworkConnection.ConnectionResult result = networkConnection.execute()

第二种是用okhttp

OkHttpClient client = new OkHttpClient()

String returnData=null

com.squareup.okhttp.Request request = new com.squareup.okhttp.Request.Builder()

addHeader("cookie", "p1u_id=4eb591e73554db0f4d3300cb656113abfb968ef6b0ee2b5de0a35caa5217c51faa028b453576b35c")

url(url)

.build()

Response response = null

try {

response = client.newCall(request).execute()

returnData=response.body().string()

Log.i("ss", "url is " + url + "_______RETUNRN DATA IS " + returnData)

} catch (IOException e) {

e.printStackTrace()

}

WKWebView 发送请求时不会把 HTTPCookieStorage 中的cookie写入请求中需要手动添加。

iOS11之前实现思路是在原有的URLRequest中注入cookie再load,这种做法只能在webView第一次请求的时候会生效,后续未跨域请求带上cookie需要在 WKWebViewConfiguration 中添加 WKUserScript .

iOS11后通过 WKWebsiteDataStore 管理

通过上述方案修改后的cookie,服务器无法再往请求中添加cookie,所以服务器返回的cookie需要本地记录,后续请求再继续添加.

实现 WKNavigationDelegate


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11414501.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存