当前位置: 首页 > news >正文

HarmonyOS NEXT应用开发实战:一分钟写一个网络接口,JsonFormat插件推荐

在开发鸿蒙操作系统应用时,网络接口的实现往往是一个繁琐且重复的过程。为了提高开发效率,坚果派(nutpi.net)特别推出了一个非常实用的插件——JsonFormat。这款插件的主要功能是将JSON格式的数据直接转换为arkts的结构定义,让我们在编写接口时能够更加轻松快捷。

JsonFormat插件介绍

JsonFormat插件可以极大地简化鸿蒙应用开发中的数据处理过程。通过这个插件,开发者只需简单操作,即可将JSON转化为对应的鸿蒙ets类,减少手动编写代码的时间,提高工作效率。

插件地址:JsonFormat插件

如何安装JsonFormat插件

  1. 通过Jetbrains Marketplace安装

    1. 打开DevEco Studio,导航至Settings/Preferences > Plugins > Marketplace
    2. 在搜索框中输入“JsonFormat”,然后进行安装。
  2. 本地jar安装

    如果在Marketplace中无法找到该插件,可以选择手动安装:

    1. Settings/Preferences > Plugins > Setting中,选择Install plugin from Disk
    2. 选择下载的插件jar文件并进行安装。

如何使用JsonFormat插件

使用JsonFormat插件,将JSON数据转换为鸿蒙ets类的过程非常简单,具体步骤如下:

1. Json2ets

  • 步骤
    1. 手动新建一个类文件,如User.ets
    2. 调用Generate,选择Json2ets
    3. 在弹出的输入框中粘贴对应的JSON,确认后即可生成对应的ets model文件。

2. Json2etsFile

  • 步骤
    1. 在指定目录上右键,选择Convert Json to Ets
    2. 在弹出的输入框中粘贴对应的JSON,并填写ets文件的名字,确认后即可生成相应的ets文件。

3. JavaBean2ets

  • 步骤
    1. 在指定的JavaBean类(以.java结尾的文件)上右键。
    2. 从弹出的菜单中选择JavaBean2ets
    3. 在二级菜单中选择对应操作:保存到文件、复制到剪贴板、在编辑框中修改任意操作。

通过以上简单的步骤,就可以快速完成从JSON到鸿蒙ets文件的转换,大大节省了开发时间。

一分钟写完接口使用举例

假如有以下接口:

### 开发者列表获取
POST https://openatom.atomgit.com/api/developer/recommend_list
Content-Type:application/json
X-ATOMGIT-POP-COMMUNITY:openatom{"pageSize": 2,"pageNum": 1,"isSelected": 0
}

如何在DevStudio中, 用时一分钟写完这个接口呢?
首先拿到该接口响应的json报文:

{"code": 200,"msg": "成功","data": {"records": [{"nickname": "shetianlang","photo": "https://file.atomgit.com/uploads/user/default.png","userId": "677024fa328a782f18201665","username": "shetianlang","profile": "","jump": "https://atomgit.com/shetianlang","isFocus": false,"focusButtonDisabled": false,"warehouseList": []},{"nickname": "zhangzz0123","photo": "https://file.atomgit.com/uploads/user/default.png","userId": "676d18a2ade4166a13b033af","username": "zhangzz0123","profile": "","jump": "https://atomgit.com/zhangzz0123","isFocus": false,"focusButtonDisabled": false,"warehouseList": []}],"total": 462,"size": 2,"current": 1,"pages": 231}
}

然后打开devstudio,新建一个UserList.ts 文件,再使用这个插件:
在这里插入图片描述
自动生成了以下定义:

export interface UserListResp {code: number;msg: string;data: UserListRespData;
}
export interface UserListRespDataRecords {nickname: string;photo: string;userId: string;username: string;profile: string;jump: string;isFocus: boolean;focusButtonDisabled: boolean;warehouseList: object[];
}
export interface UserListRespData {records: UserListRespDataRecords[];total: number;size: number;current: number;pages: number;
}

接下来就可以写接口啦:

import { UserListResp } from '../bean/UserList';
// 获取开发者列表
export const getUserList = (pageNum:number,pageSize:number): HttpPromise<UserListResp> => axiosClient.post({url:'/developer/recommend_list',data:{pageSize:pageSize,pageNum:pageNum}});

至此,一个接口写完啦,是不是很简单?
关于上面这个axiosClient怎么来的?是坚果派对axios三方库的封装(@nutpi/axios),推荐使用。
库的地址:https://ohpm.openharmony.cn/#/cn/detail/@nutpi%2Faxios

小结

JsonFormat插件是鸿蒙应用开发的一大助力,为开发者提供了高效、便捷的方式来处理JSON数据。无论您是新手还是经验丰富的开发者,这个插件都将成为您开发过程中的得力助手。赶快试试吧,将您的开发效率提升到新的高度!

如需获取更多资料或具体操作步骤,您可以访问以下链接,了解最新版本和更新信息:

  • Jetbrains仓库地址
  • Atomgit
  • Gitee
  • 坚果派

希望这篇博文能帮助您在HarmonyOS NEXT应用开发中更加得心应手!

http://www.lryc.cn/news/514542.html

相关文章:

  • 基于动力学的MPC控制器设计盲点解析
  • Java重要面试名词整理(十六):SpringBoot
  • 在K8S中,如何部署kubesphere?
  • 算法-查找缺失的数字
  • antd-vue - - - - - a-date-picker限制选择范围
  • 计算机网络练习题
  • redis的集群模式与ELK基础
  • STM32-笔记18-呼吸灯
  • Vue3 + ElementPlus动态合并数据相同的单元格(超级详细版)
  • 【JavaWeb后端学习笔记】MySQL的数据控制语言(Data Control Language,DCL)
  • libvirt学习
  • STM32-笔记19-串口打印功能
  • 概率论与数理统计
  • 统信系统设置代理的问题
  • TCP 为什么采用三次握手和四次挥手以及 TCP 和 UDP 的区别
  • springboot配置并使用RestTemplate
  • 人工智能-Python网络编程-TCP
  • 【Java回顾】Day3 继承|Override/Ovverload|多态|抽象类|封装|接口|枚举
  • SpringMVC(四)响应
  • vim 的基础使用
  • 关于flinkCDC监控mysql binlog时,datetime类型自动转换成时间戳类型问题
  • 基于Springboot校园失物招领系统【附源码】
  • 单片机端口操作和独立引脚操作
  • 【Vim Masterclass 笔记03】S03L10 + S03L11:Vim 中的文本删除操作以及 Vim 思维习惯的培养(含 DIY 拓展知识点)
  • ARM200~500部署
  • word中插入zotero引用
  • 需求上线,为什么要刷缓存?
  • TVS二极管选型【EMC】
  • 《从入门到精通:蓝桥杯编程大赛知识点全攻略》(一)-递归实现指数型枚举、递归实现排列型枚举
  • C#对线程同步的应用