HarmonyOS 如何将后端返回的字符串直接转化为json对象

如何将后端返回的字符串直接转化为json对象,如json对象,不再定义很多的实体来接收

HarmonyOS
3天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
shlp

可以尝试使用以下方案:

1.封装工具类:

import { ClassConstructor, instanceToPlain, plainToClass } from 'class-transformer';
import { BusinessError } from '@kit.BasicServicesKit';
static jsonToBean<T>(cls: ClassConstructor<T>, jsonStr: string): T | null {
  try {
    return plainToClass(cls, JSON.parse(jsonStr), { enableImplicitConversion: false, exposeDefaultValues: true }) as T
  } catch (err) {
    let error = err as BusinessError;
    LogUtil.error(`JSONUtil-jsonToBean-异常 ~ code: ${error.code} -·- message: ${error.message}`);
    return null
  }
}

2.使用三方库 reflect-metadata 和 class-transformer

let jsonstr: string = ‘{“version”: “1.0.0”, “status”: 0}’
let js: string = JSON.parse(jsonstr)
let t: Test = plainToClass(Test, js)

class-transformer地址:https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/class-transformer 本库提供对象和类之间基于修饰符的转换、序列化和反序列化的能力

reflect-metadata 地址:https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/reflect-metadata 用于在TypeScript中操作类的元数据,允许在声明类和属性时添加和读取元数据。

分享
微博
QQ
微信
回复
3天前
相关问题
如何将JSON字符串转Class对象
489浏览 • 1回复 待解决
如何将JSON字符串转Class对象数组?
502浏览 • 1回复 待解决
如何将对象转为JSON字符串
599浏览 • 1回复 待解决
如何将JSON字符串转为Map
343浏览 • 1回复 待解决
如何打印JSON对象JSON字符串
411浏览 • 1回复 待解决
如何将文件转换成字符串
437浏览 • 1回复 待解决
如何将Uint8Array转字符串
611浏览 • 1回复 待解决
如何将字符串转为Uint8Array?
842浏览 • 1回复 待解决
HarmonyOS 如何将md5变成字符串
315浏览 • 1回复 待解决
如何将字符串转换为浮点数。
480浏览 • 1回复 待解决
如何将一张图片转化为PixelMapElement
10049浏览 • 1回复 待解决