#鸿蒙通关秘籍#在HarmonyOS中如何防止不同接口返回的数据结构不一致?

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
代码小鬼才
  1. 在拦截器中处理响应结果的一致性。
  2. 设置一个拦截器,获取响应数据并识别其中的不同字段名,将其标准化。
    const response = await next.handle(context);
    let result = response.toJSON();
    let success: boolean = true;
    let message: string = '';
    let data: Record<string, Object> = {};
    let code = response.statusCode + '';
    
    if (result) {
      Object.entries(result).forEach((item: object) => {
        if (["errorCode", "code", "status"].includes(String(item[0]))) {
          code = String(item[1]);
          success = disposeCode(String(item[1]));
        }
        if (["errorMsg", "message", "msg"].includes(String(item[0]))) {
          message = String(item[1]);
        }
        if (["data", "result"].includes(String(item[0]))) {
          data = item[1];
        }
      })
    }
    
  3. disposeMsg函数处理不同状态码返回的默认消息。
  4. 返回统一格式化的BaseResponse对象。
分享
微博
QQ
微信
回复
1天前
相关问题
window 全屏操作不同设备表现不一致
327浏览 • 1回复 待解决
启动和调试行为不一致
148浏览 • 1回复 待解决
签名不一致报错怎么回事?
2571浏览 • 1回复 待解决
water flow 出现gap不一致问题
654浏览 • 1回复 待解决
Path组件绘制线条粗细不一致
1852浏览 • 1回复 待解决
napi里面,相同输入输出不一致
1620浏览 • 1回复 待解决
文字空行高度与字体高度不一致
2046浏览 • 1回复 待解决