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

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进