当前位置:   article > 正文

[初级]JAVA中TCP/HTTP协议JSON数据的封装~三分钟看懂_javahttp请求封装json请求体

javahttp请求封装json请求体

目录

一、前言

二、TCP协议下JSON数据封装

三、HTTP协议下JSON数据封装

四、总结


一、前言

        在日常的网络编程中,我们可以常见基础TCP/HTTP协议的一些数据的传输请求(Http协议是建立在Tcp协议基础之上的),不过本篇文章不注重讲解网络编程部分,而是为大家提供一些封装JSON数据以用于发送的方法。


二、TCP协议下JSON数据封装

        TCP连接一般我们会使用到Java中的Socket进行,在某些项目需求中,会要求我们传输一些Json数据,我们需要将封装好的Json数据写入流并发送以获得反馈。

        首先我们举一个需要的Json格式例子:

        

        此处我们需要封装如上格式的Json数据并发送出去。

        此处我们提供一个Json数据格式范本:

String json="{ 'Json键名':Json键值 , 'Json键名':Json键值}";

        Json键值有如下几种格式:

        1.数值型        当Json键值为数值型的时候,我们直接替换格式中Json键值的位置即可,不需做其他操作。如上图中名称为 t 的Json键。

        2.字符串型        当Json键值为字符串型的时候,我们需要用单引号包括起来再替换格式中Json键值的位置。如上图中的cmdid与apitag参数。

        3.Json对象        当Json键值为Json数据格式时,我们需要复用上边的Json数据格式范本。

        最后封装完成的Json数据如下:

 String json="{ 't':5, 'cmdid':'123456', 'apitag':'rgb_open', 'data':{'onoff':1 } }";

        此处需要注意的坑:Json键值的第一种格式即数值型时,大部分这种类型使我们自己判断得来的,有些网站的这个参数表面上他告诉你是0或者1、2这种数字,被误认为是数值型,但其实网站认为这个0、1、2是字符串格式,由于你没有带单引号,因此网站不会回复你的数据,所以遇到当传递数值没有回应时的情况时,应该带上单引号重试,反之亦然


三、HTTP协议下JSON数据封装

        相比TCP协议,HTTP协议下的Json数据封装就比较常见以及简单了,我们常见的GET与POST请求都通过传递类似数据。

        首先举一个需要的Json格式例子:

        Json数据的封装格式如下:

  1. String json="参数=参数值 & 参数=参数值 &...";
  2. //多个参数之间使用 & 连接

        这里的Json数据没有什么其他要求,封装完的Json数据如下:

String json="Account=123 & Password=123 & IsRememberMe=true";

四、总结

        TCP协议下的Json数据传输用的不是很多,日常大部分使用的还是HTTP协议下的,但是Json数据封装无非这两种格式,本文章是从便于理解的角度出发,措辞不严谨之处敬请见谅,如有错误欢迎指正。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/522917
推荐阅读
相关标签
  

闽ICP备14008679号