【计算机网络 16】一个基于TCP协议的Socket通信实例
面试成功其实都是必然发生的事情,因为在此之前我做足了充分的准备工作,不单单是纯粹的刷题,更多的还会去刷一些Java核心架构进阶知识点,比如:JVM、高并发、多线程、缓存、Spring相关、分布式、微服务、RPC、网络、设计模式、MQ、Redis、MySQL、设计模式、负载均衡、算法、数据结构、kafka、ZK、集群等。其中 6 位交易报文长度以 ASCII 码字符串方式表示(6 个字节),右对齐,
2、实时报文规范说明
3、通讯及接口格式说明
通讯方式:
通讯采用 TCP 协议, SOCKET 同步短连接方式。
报文结构:
报文为不定长报文,以定长报文头+不定长报文体的方式
报文基本结构如下图所示:
6位交易报文长度+交易报文。其中 6 位交易报文长度以 ASCII 码字符串方式表示(6 个字节),右对齐,左补 0,不包括自身的长度,表示的是报文体的长度。如“000036fbced3fe-7025-4b5c-9cef-2421cd981f39”, 000036 为长度,“fbced3fe-7025-4b5c-9cef-2421cd981f39”为报文内容。
报文结构符合 XML 标准的报文格式,报文以无 BOM 格式的 GBK 编码。报文根节点为 Transaction节点。除非报文里有特殊说明,报文定义的字段都是 Transaction 节点的子节点。报文格式参考下节示例。
此文的重点在于说明,用socket传递数据时,报文的基本机构通常包含【定长的报文头+不定长的报文体】
4、报文示例
请求:
000410<?xml version="1.0" encoding="GBK"?><req:request xmlns:req=“http://chimera.intele.com/gw/xsd/SMSGateway/Request/2013/02”>29greerg+4741414141test02018-06-1516:15:00</req:request>
响应:
000683<?xml version="1.0" encoding="GBK"?><rsl:result xmlns:rsl=http://chimera.intele.com/gw/xsd/TCPGateway/Result/2015/10 xmlns:sms=http://chimera.intele.com/gw/xsd/SMSGateway/Response/2013/02 xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”>1
OKsms:response0c2c002f-ccc6-4c7b-86e1-c7871b1c98b31Message enqueued for sendingSMS-AFFS-000000100+47419155906y06b02hdo001</sms:response></rsl:result>
往期精彩内容:
Java核心架构进阶知识点
面试成功其实都是必然发生的事情,因为在此之前我做足了充分的准备工作,不单单是纯粹的刷题,更多的还会去刷一些Java核心架构进阶知识点,比如:JVM、高并发、多线程、缓存、Spring相关、分布式、微服务、RPC、网络、设计模式、MQ、Redis、MySQL、设计模式、负载均衡、算法、数据结构、kafka、ZK、集群等。而这些也全被整理浓缩到了一份pdf——《Java核心架构进阶知识点整理》,全部都是精华中的精华,本着共赢的心态,好东西自然也是要分享的
内容颇多,篇幅却有限,这就不在过多的介绍了,大家可根据以上截图自行脑补
08)]
[外链图片转存中…(img-kLJal1Sn-1721165649109)]
内容颇多,篇幅却有限,这就不在过多的介绍了,大家可根据以上截图自行脑补
更多推荐
所有评论(0)