HarmonyOS http请求时,从webview.WebCookieManager读取cookie后,web页面报错

调用登录接口时我把请求头的set-cookie数据保存到webview.WebCookieManager中,登录成功以后,再请求数据时先从webview.WebCookieManager读取cookie,然后放在header中再发起请求,这样服务端就可以确认当前用户的身份。

我遇到的问题:

按上面操作后我发现web页面空白了,调试后发现只要调用webview.WebCookieManager.fetchCookieSync,页面就会空白,不调用就不会空白。

使用hdc接口转发到电脑端浏览器后发现自定义协议没有拦截到

//我是如何保存cookie的:
try {
  setCookies.forEach((cookie) => webview.WebCookieManager.configCookieSync(url, cookie, false));
} catch (error) {
  Logger.error(`ErrorCode: ${(error as BusinessError).code}, Message: ${(error as BusinessError).message}`);
}

//我是如何读取cookie的:
try {
  const cookieStr = webview.WebCookieManager.fetchCookieSync(url, false)
  return cookieStr;
} catch (error) {
  return '';
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
HarmonyOS
2024-12-25 15:22:08
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
Heiang

需要设置允许发送和接受cookie WebView.WebCookieManager.putAcceptCookieEnabled(true);

分享
微博
QQ
微信
回复
2024-12-25 17:11:56


相关问题
Web组件通过WebCookieManager设置获取cookie
3246浏览 • 1回复 待解决
HarmonyOS webview cookie同步报错
982浏览 • 1回复 待解决
http 请求 如何cookie持久化?
2893浏览 • 1回复 待解决
鸿蒙http请求如何使用cookie管理器
1937浏览 • 1回复 待解决
HarmonyOS http请求流数据报错
1090浏览 • 1回复 待解决
HarmonyOS http请求下载文件报错2300023
1009浏览 • 1回复 待解决
http请求报错2300006如何解决
3959浏览 • 1回复 待解决
HTTP GET请求如何传递参数?
4146浏览 • 1回复 待解决
http请求中下载文件报错2300023
3594浏览 • 1回复 待解决
HarmonyOS HTTP cookie管理和使用
769浏览 • 1回复 待解决