MM7api反向服务开发过程中报文的解析
来源:互联网 发布:mac如何使用shadowsock 编辑:程序博客网 时间:2024/06/11 05:45
需求分析: 根据中国移动MM7协议 和MM7 api的jar包 反向开发MM7服务端。
依赖于MM7api 的jar包(因为请求的报文 已经在jar包中封装好,所以拿来直接用。 报文内容 可以看到 mm7api 包 的 soapEcoder.class)
该请求协议时 Http POST + soap 使用soap协议打在http post发送请求。 在mm7api中 封装好了 请求体。 this is a multi-part message in MIME format
的请求报文。
MM7API请求完整报文
this is a multi-part message in MIME format
----NextPart_0_2817_24856
Content-Type:text/xml;charset="UTF-8"
Content-Transfer-Encoding:8bit
Content-ID:</tnn-200102/mm7-vasp>
<?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Header><mm7:TransactionID xmlns:mm7="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-6-MM7-1-0" env:mustUnderstand="1">11111111</mm7:TransactionID></env:Header><env:Body><SubmitReq xmlns="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-6-MM7-1-0"><MM7Version>6.3.0</MM7Version><SenderIdentification><VASPID>1234</VASPID><VASID>1234</VASID></SenderIdentification><Recipients><To><Number>155003657</Number></To></Recipients><ServiceCode>123</ServiceCode><Subject>娴嬭瘯</Subject></SubmitReq></env:Body></env:Envelope>
----NextPart_0_2817_24856
Content-Type:multipart/mixed;boundary="SubPart_7452684322002_77645"
Content-ID:<SaturnPics-01020930>
Content-Transfer-Encoding:8bit
--SubPart_7452684322002_77645
Content-Type:image/gif
Content-Transfer-Encoding:8bit
Content-ID:5
?唙?想_CX?拣t2h??瘺蓜庅r1椘O蓖s鹜i?\轌in.訷??狙嘨l啀荿x8吏qt*b?G9?;|硧鵞控颸}+霾餽+暦畸U礃?G玙琂k?
--SubPart_7452684322002_77645
Content-Type:image/gif
Content-Transfer-Encoding:8bit
Content-ID:5
二进制
--SubPart_7452684322002_77645--
----NextPart_0_2817_24856--
至此报文结束;
分析可见
--SubPart_7452684322002_77645-- 该节点为分段式报文的分隔符。 这个多模块传输 就是 mime邮件协议。 有附件
报文的接受 使用 原生servlet 中 request.getInputStream() 而没有用 springmvc(Httpservletrequest ,此处有坑)
接受报文后需要自己解析 ,封装 记住 在其中 string-->byte[] byte[]--string 编解码 需要使用“ISO-8859-1” 不要用别的编码 如果使用别的编码会 “丢包”。
- MM7api反向服务开发过程中报文的解析
- 中国移动MM7API开发问题
- Dubbo中暴露服务的过程解析
- 8583 报文解析过程
- ARP/RARP(地址解析/反向地址解析)报文格式
- 【原创】DNS服务反向解析...
- DHCP的报文解析
- DHCP的报文解析
- 开发Web服务过程中遇到的一些问题
- http报文中字段解析
- 解析xml文件中定义的请求报文和返回报文字段
- JavaWeb中对HTTP报文头的解析
- SSL协议握手过程报文解析
- SSL协议握手过程报文解析
- SSL协议握手过程报文解析
- 百度地图SDK开发过程中遇到的问题解析
- 嵌入式开发过程中透彻数据符号的解析
- DCC报文的解析,转载
- ABAQUS FLEXlm Error: -15, 10. System Error: 10061"WinSock: Connection refused的问题解决
- 哈哈哈
- Centos加载动态链接库
- PHP短网址
- android stdio内存泄露分析工具使用
- MM7api反向服务开发过程中报文的解析
- Citrix 桌面环境不能自动映射客户端磁盘
- Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/jflow-w
- Tutorials
- Java compiler level does not match解决方法
- document.compatMode属性
- 数据结构实验之图论一:基于邻接矩阵的广度优先搜索遍历
- 前台开发总结12——20171122
- git生成密钥