HarmonyOS 鸿蒙Next httpRequest请求接口成功了,但返回的不是JSON数据,在其他地方无法调用返回回来的对象数据

HarmonyOS 鸿蒙Next httpRequest请求接口成功了,但返回的不是JSON数据,在其他地方无法调用返回回来的对象数据 返回数据是:{“error_code”:0,“reason”:“success!”,“result”:{“data”:[{“author_name”:“至臻海购”,“category”:“头条”,“date”:“2022-12-07 11:31:00”,“is_content”:“1”,“thumbnail_pic_s”:“https://xxxxxxxxxxxxxxx”,“title”:“公司代缴十五年社保和个人缴纳十五年社保,退休后养老金有啥区别”,“uniquekey”:“b6b5c47c838822ab072c13072fdb46f9”,“url”:“https://xxxxxxxxxxx”}]},但我想通过:data.result.result.data来拿到数组数据的时候,怎么都拿不到,无论怎么拿都不行,也试了JSON.stringify()和JSON.parse()也是不行,总结就是!!这返回的数据压根就不是JSON。想知道鸿蒙js开发如何把请求响应回来的数据转换成程序里面可以用的数据。


更多关于HarmonyOS 鸿蒙Next httpRequest请求接口成功了,但返回的不是JSON数据,在其他地方无法调用返回回来的对象数据的实战教程也可以访问 https://www.itying.com/category-93-b0.html

8 回复

楼主您好,关于取值的实例您可以参考一下以下链接,看看是不是您的用法有误:https://docs.openharmony.cn/pages/v3.2Beta/zh-cn/application-dev/reference/apis/js-apis-http.md/

如果还是取不到请附上您的代码看看

更多关于HarmonyOS 鸿蒙Next httpRequest请求接口成功了,但返回的不是JSON数据,在其他地方无法调用返回回来的对象数据的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


情况都写在注释里面了,感谢您为我分析,我用的就是官方的基础案例,我只是想把数据解析出来,但解析不到。

期待HarmonyOS能在未来推出更多针对企业用户的解决方案。

httpRequest.request(“http://xxxxxxx?key=xxxxxxx”, { method: http.RequestMethod.GET, header: { ‘Content-Type’: ‘application/json’ }, connectTimeout: 60000, readTimeout: 60000, }, (err, data) => { let res = data.result; console.info(‘Result:’ + res); console.info(‘Result:’ + res.result); console.info(‘Result:’ + res.result.data); httpRequest.destroy(); });

您好,请看下3楼最新回复哟。

接口响应后,需要对数据进行json处理一下

data.result的数值类型是个字符串。

您好已收到您的反馈,因您的帖子涉及外链,已将其隐藏,感谢您的支持

针对你提到的HarmonyOS(鸿蒙)系统中httpRequest请求接口成功但返回数据非JSON格式的问题,这里有几个可能的解决方案:

  1. 检查返回数据类型:首先确认服务器实际返回的数据类型。可能是XML、纯文本或其他格式。你需要根据实际的返回类型来解析数据。

  2. 修改请求头:确保你的httpRequest请求中设置了正确的Accept头,以指明你期望接收的数据类型(如application/json)。服务器可能会根据这个头来决定返回数据的格式。

  3. 数据解析:如果返回的是非JSON数据,你需要使用相应的方法来解析这些数据。例如,如果返回的是XML,可以使用XML解析库;如果是纯文本,则直接按文本处理。

  4. 错误处理:检查是否有错误处理逻辑遗漏,有时服务器返回非预期格式的数据可能是因为请求本身有误或服务器状态异常。

  5. 日志记录:增加日志记录功能,记录请求和响应的详细信息,包括请求头、请求体、响应头和响应体,以便后续分析和调试。

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

回到顶部