HarmonyOS axios请求问题

我这边在请求拦截器里打印request里data里面的内容是有值

但是request打印出来data却为空

// 添加响应拦截器
HttpRequest.interceptors.request.use((request:InternalAxiosRequestConfig)=> {
  // 对响应数据做点什么
  console.log('请求头是这个txnBody123:::::::::::', request.data.get('txnBody'));
  console.log('请求头是这个txnHeaderInfo456:::::::::::', request.data.get('txnHeaderInfo'));
  console.log('请求内容为789::::::::', JSON.stringify(request));

  return request;
}, (error:AxiosError)=> {
  // 对响应错误做点什么
  return Promise.reject(error);
});
HarmonyOS
2024-12-27 18:16:15
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
aquaa

demo如下:

postMethod() {
  let postUrl: string = 'http://localhost:8848/checkParams';

  let simpleForm: rcp.FormFields = {};
  simpleForm['txnBody'] = "XXX";
  simpleForm['txnHeaderInfo'] = "xxx"

  let rcpSession: rcp.Session = rcp.createSession();
  let result = rcpSession.post(postUrl, simpleForm)
  result.then((res) => {
    console.log('res: ' + JSON.stringify(res))
    if (res.body) {
      let re = this.ArrayBuffer2String(res.body)
      console.log('re: ' + re)
    }
  }).catch((err: BusinessError) => {
    console.error(`err: err code is ${err.code}, err message is ${err.message}`);
  });
}

ArrayBuffer2String(buf: ArrayBuffer) {
  const decoder = util.TextDecoder.create("utf-8");
  const str = decoder.decodeWithStream(new Uint8Array(buf));
  return str;
}

simpleForm支持动态增减入参对象。请求到后台后,Java侧可以使用IOUtils.toString(request.getReader())解析出响应参数

分享
微博
QQ
微信
回复
2024-12-27 19:39:03
相关问题
HarmonyOS axios接口请求
462浏览 • 1回复 待解决
HarmonyOS 如何处理axios请求
437浏览 • 1回复 待解决
基于@ohos/axios的网络请求能力
890浏览 • 1回复 待解决
HarmonyOS axios下载文件问题
221浏览 • 1回复 待解决
HarmonyOS关于AXIOS动态传参数问题
937浏览 • 1回复 待解决
Axios与Log循环依赖问题
441浏览 • 1回复 待解决
安装axios报错404的问题
843浏览 • 1回复 待解决
2.1.1版本的axios发post请求会报401
1362浏览 • 1回复 待解决