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 '';
}
阅读 543
1 个回答

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