MM7api反向服务开发过程中报文的解析

 需求分析:  根据中国移动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?G9?;|硧鵞控颸}+霾餽+暦畸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” 不要用别的编码   如果使用别的编码会  “丢包”。  




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值