Json Master masters JSON!
对于一个软件开发人员, JSON 是最熟悉的东西之一了, 每一个开发人员基本上每一天都会跟 JSON 打交道.
作为一个大前端开发人员, 当看到从服务器返回的 JSON 数据时, 尤其是大数据量或者复杂数据结构需要解析时, 我经常会长叹一声, "唉!"
这时候, 我通常会打开自己收藏的 JSON 在线解析工具, Paste and Parse. 这样不仅多了在不同应用或者网页之间跳转的麻烦, 不要忍受数不尽的亮瞎眼的广告. 不仅累, 而且影响心情.
为什么不能不用离开 IDE, 不用打开浏览器, 不用打开新的网页就可以查看 JSON 结构呢?
为什么不能在同一个 IDE 窗口里面就可以查看格式化的 JSON, 甚至 XML/YAML/CSV 格式呢?
为什么不能在查看过格式化 JSON 之后, 就可以生成对应的 Java/Kotlin/Dart 文件呢?
更甚至, 为什么不能我不需要请求接口之后将返回结果 Copy & Paste & Parse 才能查看, 而不是我直接将请求链接跟参数输入之后, 可以直接将返回结果解析呢?
带着这样的疑虑, 再基于自身开发并部署IDEA插件的经验, 我决定自己写一个 Json Master 插件. 没错, 就是 Json Master masters JSON 的意思. 它所能做的事件, 全部都跟 JSON 有关.
Json Master 这个名字是我思考良久, 在一次晚上绕小区压马路的时候, 灵激一动想出来的名字. 想到这个名字的时候, 内心一阵窃喜, 哈哈.
再想, 它需要提供哪些功能?
- 格式化 JSON 数据起码要有. 这个是最基本的功能. 如果输入的数据有误, 还应该提示是输入的哪个位置有问题. 这个可以作为一个插件项目的近期目标.
- 可以将 JSON 输入成 XML/YAML/CSV 格式. 这个是偶然间我在一个有诸多广告的 JSON 在线解析的网站上遇到的. 我觉着可以添加进来. 这个可以作为一个中期目标.
- 以及, 查看过 JSON 格式之后, 是不是可以直接生成 Java/Kotlin/Dart 文件呢? 这个也是很实用的功能.
- 再者, 再远期一点, 是不可以输入地址跟参数, 直接解析拦截到的服务器 JSON 响应, 就像 Postman 一样?
经过两个多月的构思, 以及利用周末的时间, Json Master 插件项目终于可以发布上线了.
我把它开源到了Github 上, 项目的地址在: JsonMaster.
线上版本目前只支持初期的目标, 也就是查看格式化 JSON 字符串.
它长这个样子:
目前 Github 上面的代码已经支持 XML/YAML/CSV/Properties 格式转换, 只是还没有发布.
中期的规划是: 添加从 JSON 生成 Java/Kotlin/Dart 类.
远期的功能规划是: 拦截网络请求, 格式化 JSON 响应.
最后, 开源不易, 尤其是对于全职的开源爱好者. 需要占用不少下班以及周末时间. 如果您觉着这个项目是值得做的, 是做的有意义的, 可以通过以下方式来表达支持:
- Watch/Star/Fork this project. 关注/标星/Fork 该项目.
- Share/Recommend this plugin(JsonMaster) to your friends/work mates. 向朋友或者同事推荐该插件.
- Highly rate JsonMaster in Marketplace. 在应用市场对 JsonMaster 进行评分
- Create Issue s. 反馈问题, 提供您的建议或者想法.
更多:
Polyglot Translators: Let's do i18n easier! 一款国际化插件小助手!
mns: Money Never Sleeps! 自己开发的一款 IDEA 插件介绍.
Json Master masters JSON!的更多相关文章
- [.net 面向对象程序设计进阶] (13) 序列化(Serialization)(五) Json 序列化利器 Newtonsoft.Json 及 通用Json类
[.net 面向对象程序设计进阶] (13) 序列化(Serialization)(五) Json 序列化利器 Newtonsoft.Json 及 通用Json类 本节导读: 关于JSON序列化,不能 ...
- jsoncpp构造json字符串和json数组
jsoncpp构造json字符串和json数组 参考文章:Jsoncpp的简单使用 下载json文件夹放在c++项目的include目录下,在CMakeLists中include进去,然后就可以在代码 ...
- hive之Json解析(普通Json和Json数组)
一.数据准备 现准备原始json数据(test.json)如下: {"movie":"1193","rate":"5", ...
- .Net使用Newtonsoft.Json.dll(JSON.NET)对象序列化成json、反序列化json示例教程
JSON作为一种轻量级的数据交换格式,简单灵活,被很多系统用来数据交互,作为一名.NET开发人员,JSON.NET无疑是最好的序列化框架,支持XML和JSON序列化,高性能,免费开源,支持LINQ查询 ...
- json数据格式及json校验格式化工具简单实现
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, ...
- Json对象与Json字符串互转(4种转换方式)
Json字符与Json对象的相互转换方式有很多,接下来将为大家一一介绍下,感兴趣的朋友可以参考下哈,希望可以帮助到你 1>jQuery插件支持的转换方式: 复制代码代码如下: $.parseJS ...
- 使用 Json.Net 对Json文本进行 增删改查
JSON 已经成为当前主流交互格式, 如何在C#中使用 Json.Net 对Json文本进行 增删改查呢?见如下代码 #region Create (从零创建) public static strin ...
- jQuery中json对象与json字符串互换
json字符串转json对象:jQuery.parseJSON(jsonStr); json对象转json字符串:JSON.stringify(jsonObj); 根据“|”把字符串变成数组.spli ...
- JavaScript Json对象和Json对象字符串的关系 jsonObj<->JsonString
JavaScript Json对象和Json对象字符串的关系 jsonObj<->JsonString 如下示例: 直接写的a1就是一个Json对象,a2 就是一个Json对象字符串; 通 ...
随机推荐
- shiro入门学习--使用MD5和salt进行加密|练气后期
写在前面 在上一篇文章<Shiro入门学习---使用自定义Realm完成认证|练气中期>当中,我们学会了使用自定义Realm实现shiro数据源的切换,我们可以切换成从关系数据库如MySQ ...
- 如何使用MATLAB对图片的RGB三种颜色进行提取
参考: https://jingyan.baidu.com/article/456c463b41de5f0a5831448e.html matlab在图像处理方面,具有很强大的应用.下面将分享如何使用 ...
- JavaFX ComboBox的选中事项
参考1:https://blog.csdn.net/mexel310/article/details/37909205 参考2:https://blog.csdn.net/maosijunzi/art ...
- 用于编写下一代JavaScript的编译器。
下载 用于编写下一代JavaScript的编译器. 支持巴别塔 Babel(发音为babble)是一个由社区驱动的项目,被许多公司和项目使用,由一群志愿者维护.如果你愿意帮助支持这个项目的未来,请考虑 ...
- CSP-S 2019 游记,以及AFO
CSP-S:Day1 195 Day2 84 滚粗,AFO. Day0 和cyl神仙打了一会儿游戏,九点半教了cyl一下LCT,开始写板子题,写到十点半,睡觉. Day1 六点半起床.吃饭.赶赴考场, ...
- 多测师讲解接口 _需求文档(用户增删改查)_高级讲师肖sir
首先连接Duoceshi_new网络 密码为Duoceshi_new,因为接口项目部署在Duoceshi_new网段中. 测试工具:postman域名:http://192.168.1.2:8081/ ...
- k8s集群添加新得node节点
服务端操作: 方法一: 获取master的join token kubeadm token create --print-join-command 重新加入节点 kubeadm join 192.16 ...
- BUUCTF-数据包中的线索 1
打开题目里面一个pcapng的文件,于是我们拖进wireshark流量分析一波 发现有http的流量,于是我们过滤http 让后追踪http,然后发现base64的编码, 于是我们看到了base64编 ...
- lambda函数小结
C++中的lambda函数 lambda函数是函数式编程中的概念,由C++11引入,成为现代C++中重要的特性. 所谓lambda函数就是匿名函数,语法结构: [capture list] (para ...
- spring boot:使用mybatis访问多个mysql数据源/查看Hikari连接池的统计信息(spring boot 2.3.1)
一,为什么要访问多个mysql数据源? 实际的生产环境中,我们的数据并不会总放在一个数据库, 例如:业务数据库:存放了用户/商品/订单 统计数据库:按年.月.日的针对用户.商品.订单的统计表 因为统计 ...