HarmonyOS 鸿蒙Next下实现无感刷新cookie方法:除登录外,其他功能接口请求头加入JSESSIONID调通接口技巧 或 如何在请求头中加入JSESSIONID以实现HarmonyOS 鸿蒙Next下除登录外其他功能接口使用同一个cookie无感刷新

HarmonyOS 鸿蒙Next下实现无感刷新cookie方法:除登录外,其他功能接口请求头加入JSESSIONID调通接口技巧

如何在请求头中加入JSESSIONID以实现HarmonyOS 鸿蒙Next下除登录外其他功能接口使用同一个cookie无感刷新

  • // 定义header
  • let headers = {
  • “Content-Type”: “application/json”,
  • “Connection”: “keep-alive”,
  • “Cookie”: “0xxxHqxxxxxxxxxxxxxxxxn6xxxxx7H:-1”
  • }
  • 这样传值对吗?为什么调用接口还是调不通?

更多关于HarmonyOS 鸿蒙Next下实现无感刷新cookie方法:除登录外,其他功能接口请求头加入JSESSIONID调通接口技巧 或 如何在请求头中加入JSESSIONID以实现HarmonyOS 鸿蒙Next下除登录外其他功能接口使用同一个cookie无感刷新的实战教程也可以访问 https://www.itying.com/category-93-b0.html

6 回复

希望我的回答对您有帮助。

// 使用首选项/关系型数据库/应用内存储存储登录cookie
// 初次为空
PersistentStorage.persistProp("COOKIE", "");

// 自行根据业务扩展
export const service = (url: string, type: boolean = false) => {
  // 其他内容
  let headers = {
    "Content-Type": "application/json",
    "Connection": "keep-alive",
    "Cookie": AppStorage.get("COOKIE") ? null : AppStorage.get("COOKIE")
  };
  
  // 其他内容
}

更多关于HarmonyOS 鸿蒙Next下实现无感刷新cookie方法:除登录外,其他功能接口请求头加入JSESSIONID调通接口技巧 或 如何在请求头中加入JSESSIONID以实现HarmonyOS 鸿蒙Next下除登录外其他功能接口使用同一个cookie无感刷新的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


确实存在应用内存存储了,但是不太清楚怎么传。我是直接value.cooikes拿到了全部,然后直接放进去了,不行。

登录后把cookie用持久化方式存储,其他接口用的时候直接获取就行。

鉴于您说的不行,可以打断点看看登陆后的cookie值和其他接口请求时headers里面的cookie是否一致。

首先需要持久化缓存,然后在冷启动以后 同步到AppStorage中,同时封装网络请求,在request的拦截器中,传入值

您好,可以参照一下eftool中的efAxios和efClientApi中的请求方式设置header,符合你的登录后存储需求

在HarmonyOS鸿蒙Next系统中,若要实现除登录外其他功能接口请求头中加入JSESSIONID以无感刷新cookie,可以按照以下步骤操作:

  1. 获取JSESSIONID: 在用户成功登录后,服务器通常会在响应头中设置一个名为Set-Cookie的字段,其中包含JSESSIONID。你需要从该响应头中提取出JSESSIONID的值。

  2. 存储JSESSIONID: 将提取到的JSESSIONID值保存在本地,如使用鸿蒙系统的数据存储API保存至SharedPreferences或数据库中,以便后续使用。

  3. 在请求头中加入JSESSIONID: 在进行除登录外的其他功能接口请求时,需要在HTTP请求头中加入Cookie字段,其值为JSESSIONID=<提取到的值>。这样,服务器就能识别出这是同一个会话,从而实现无感刷新。

  4. 处理会话过期: 如果JSESSIONID失效(如会话超时),则需要重新登录以获取新的JSESSIONID,并更新本地存储的值。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部