救命啊!!谁给我解答我愿意送上我所有的分!!在线等待。。。。。。。。。。

原创 2017年01月02日 23:17:47
我现在在做一个短信接口,但是只有发送端的程序,我不是太明白,希望高手给我分析一下接收短我该怎么去做了啊!!发送端测试通过 下面是程序:
//发送端程序代码
import java.io.*;
import java.net.*;
import java.util.Enumeration;
import java.util.Vector;
import sun.misc.BASE64Encoder;
public class testoutput { 
 
    public static void main(String[] argv) throws Exception {
      String authorizationInfo="<txly>=<txly>";
      String encoding = new sun.misc.BASE64Encoder().encode (authorizationInfo.getBytes());
        URL url = new URL("http://211.155.23.60:8081/spsmsgate");
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
       connection.setRequestProperty ("Authorization", encoding);
       connection.setDoOutput(true);
        PrintWriter out = new PrintWriter(connection.getOutputStream());
        String name = "<?xml version='1.0' encoding='GB2312'?><PushMsg><SourceAddr>0163377</SourceAddr><DestAddr>13926019282</DestAddr><MTTime>2003-01-01 17:34:11</MTTime><ReportFlag>0</ReportFlag><ServiceID>00</ServiceID><FeeUserType>0</FeeUserType><MTFlag>0</MTFlag><FeeUserAddr>13926019282</FeeUserAddr><TPPid>0</TPPid><TPUDHI>0</TPUDHI><FeeType>01</FeeType><FeeValue>0</FeeValue><MessageCoding>15</MessageCoding><Content>测试</Content></PushMsg>";
        out.println(name);
        out.close();
        BufferedReader in
            = new BufferedReader(new InputStreamReade r(connection.getInputStream
()));
        String line;
        while ((line = in.readLine()) != null) {
            System.out.println(line); 
        }
     in.close();

    }


这个是分析书:
短信平台接入说明
1.2. 接口说明
短信平台和SP的接口采用HTTP+XML的方式,SP和短信网关互为HTTP的客户端和服务端, HTTP客户端必须采用授权方式访问这些URL,HTTP的特点决定客户端和服务端的每一次通讯都必须完成授权连接,发送请求,接收应答,关闭连接等过程, 建议SP使用HTTP1.1 KeepAlive的方式.
对于MO方向的命令(即命令接收方为SP),由短信网关通过POST方式提交给SP进行处理,SP在应答中确认信息接收成功与否.MO需要返回的信息通过Push的方式过来
对于SP主动向用户发送信息的Push业务,由SP作为客户端将信息通过POST方式提交到SP短信接收模块,短信网关在应答中确认信息发送成功与否.
如果HTTP服务器接收到的HTTP请求内容的格式不完整或不正确,HTTP服务器应该返回错误码.
HTTP服务端支持HTTP1.0和HTTP1.1

1.2.1. IOD模块发送请求到SP服务
<?xml version="1.0" encoding="GB2312"?>
<IODMsg>
    <!—短信主叫号码 -->
    <SoureAddr>13923864570</SourceAddr>
    <!—短信被叫号码 -->
    <DestAddr>188888</DestAddr>
    <!—短信接收时间-->
    <MOTime>2003-01-01 17:34:11</MOTime>
<!—短信内容编码方式 -->
<MessageCoding>15</MessageCoding >
<!—短信内容 -->
    <Content>特斯坦</Content>
</IODMsg>
1.2.2. SP服务向IOD模块返回
<?xml version="1.0" encoding="GB2312"?>
<IODResp>
    <!— 返回代码 0:成功 1:失败-->
    <Result>0</Result>
    <!—返回代码描述 -->
    <RetMsg>成功</RetMsg>
</IODResp>
1.2.3. SP服务向SP短信接收模块发送请求
<?xml version="1.0" encoding="GB2312"?>
<PushMsg>
    <!—短信主叫号码 -->
    <SoureAddr>18888</SourceAddr>
    <!—短信被叫号码 -->
    <DestAddr>13923864570</DestAddr>
    <!—短信发送时间-->
<MTTime>2003-01-01 17:34:11</MTTime>
    <!—是否需要状态报告 0:不需要,1:需要,2:产生话单-->
<ReportFlag>0</ReportFlag>
    <!—业务类型-->
<ServiceID>Game</ServiceID>
    <!—计费用户类型 0:对被叫用户计费,1:对主叫用户计费,2:SP计费-->
<FeeUserType>0</ FeeUserType >
<!—计费用户-->
<FeeUserAddr>13923864571</ FeeUserAddr >
<!—Tp-pid-->
<TPPid>0</ TPPid >
<!—TPUDHI-->
< TPUDHI >0</ TPUDHI >
<!—资费类型 01 :对计费号码免费,02对计费用户按条收费,03:对计费用户包月计费,04:对计费用户信息费封顶-->
< FeeType>0</ FeeType>
<!—资费代码,单位为分-->
< FeeValue>10</ FeeValue>
<!—信息格式 0:Asc,4:Binary,15:GBK,8:UCS2-->
< MessageCoding>0</ MessageCoding>
<!—短信内容编码方式 -->
<MessageCoding>15</MessageCoding >
<!—短信内容 -->
    <Content>特斯坦</Content>
</PushMsg>
1.2.4. SP短信接入模块向SP服务返回
<?xml version="1.0" encoding="GB2312"?>
<PushResp>
    <!— 返回代码 0:成功 1:非法登录 2:IP访问不允许,3:请求格式错误 4:非法主叫号码 5:非法计费号码 6:非法被叫号码 -->
    <Result>0</Result>
    <!—返回代码描述 -->
    <RetMsg>成功</RetMsg>
</PushResp>
1.2.5. 身份校验
所有发送来的HTTP请求均需要身份校验,身份校验采用标准的HTTP的身份校验方式,HTTP客户端必须在每次请求中都带上授权信息.HTTP的身份校验的实现请参阅HTTP协议.
例如:用户名为jlt,密码为jlt,即在http请求的头里面设置Authorization: PGpsdD49PGpsdD4=, PGpsdD49PGpsdD4=为<jlt>=<jlt>的base64编码结果.



















SON:如果你愿意一层一层剥开我的心,你会发现...这里水很深——深入理解JSON

原文:https://apriltail.com/2017/03/25/json-ru-guo-ni-yuan-yi-yi-ceng-yi-ceng-bo-kai-wo-de-xin-ni-hui-f...
  • zdhsoft
  • zdhsoft
  • 2017年04月06日 11:45
  • 280

你变成了我

Description  编写一个C程序实现将字符串中的所有”you”替换成”we”  Input  输入包含多行数据  每行数据是一个字符串,长度不超过1000  数据以EOF结束  O...
  • zongyihang
  • zongyihang
  • 2016年12月10日 19:14
  • 129

我愿意蹲下来,陪你做一只蘑菇。。。

我喜欢这个故事: 有一个精神病人,以为自己是一只蘑菇。  于是他每天都撑着一把伞蹲在房间的墙角里, 不吃也不喝,像一只真正的蘑菇一样。 心理医生想了一个办法。  有一天,心理医生也撑...
  • u014545619
  • u014545619
  • 2014年04月04日 17:57
  • 148

《我的神啊》观后感

经典语录:                    有一段时间,我也找不到吃的,无家可归,我常常哭泣,我甚至没有朋友,我只有一个追寻,神。每天我都想今天会更好,神会指明我前途,我赞同、信奉神,...
  • coco_astrids
  • coco_astrids
  • 2016年11月27日 13:10
  • 693

救命啊,我该怎么办?

我是学软件开发的,刚刚工作不久,由于工作性质的原因,工作不是很忙,要求的技术不是很高,唯一做的就是自己去充实自己,但是我不知道自己该做些什么,觉得什么东西都应该学,却不知道从何入手。目前对手头的工作也...
  • fengzhizi2
  • fengzhizi2
  • 2010年06月23日 09:27
  • 96

为了其他人活得更好

著名法国微生物学家巴斯德在进行科学研究时,把科学的发展看得比自己的生命更重要些,一次,一艘停靠在波尔多的轮船上发现了黄热病人,巴斯德闻讯后立刻赶往那里,希望发现引起这种烈性传染病的病菌,有人问道:“你...
  • aeiou260199038
  • aeiou260199038
  • 2010年01月29日 10:20
  • 139

《我所理解的Cocos2d-x》PDF

《我所理解的Cocos2d-x》 针对最新的 Cocos2d-x 3.x版本,介绍了Coco2d-x游戏引擎的基本架构、渲染机制,以及各个子模块的功能和原理,并结合OpenGL ES...
  • qq_25327609
  • qq_25327609
  • 2016年05月09日 16:35
  • 6594

因为你是我心脏跳动的力量

我是你的港湾,我是你前行的陪伴 我找到你所在的小巷时,也找到你的家 我们的手仍然紧紧牵在一起 找到了你的真主,我也遇到了我的神 我们相遇之后,我感觉充满了力量 我们相遇后,我变得无所不能 ...
  • MrGraffiti
  • MrGraffiti
  • 2016年03月30日 00:16
  • 615

[JAVA · 初级]:21.多线程

概述 程序:Program,是一个静态的概念 进程:Process,是一个动态的概念 进程是程序的一次动态执行过程, 占用特定的地址空间. 每个进程都是独立的,由3部分组成cpu,data,code ...
  • u013047005
  • u013047005
  • 2016年04月07日 23:44
  • 3315

637 我和你

#include #include int main() { int i,j,size; char a[301],b[4]; size=strlen("我"); wh...
  • u011329762
  • u011329762
  • 2014年07月26日 17:24
  • 317
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:救命啊!!谁给我解答我愿意送上我所有的分!!在线等待。。。。。。。。。。
举报原因:
原因补充:

(最多只允许输入30个字)