技术开发 频道

BlackBerry 应用程序开发-MDS服务参考

  【IT168 技术文档】

  HTTP请求一个客户端建立一个连接,并且发送一个HTTP请求消息到服务器.服务器然后发送一个响应消息,这个消息通常包含了请求的资源.

<method> <resource_path><version>

Header1: value1

Header2: value2

Header3: value3

<optional message>

  HTTP请求变量

  描述

  method

  方法名,指定了一个动作,例如GET,HEAD或POST.常用的方法是GET,它从服务器请求一个资源.

  resource_path

  指向请求资源的路径,它是URL中的一部分,在主机名后面出现.它也称为请求URL(Request URL).

  version

  你正在运行的HTTP版本,标记为”HTTP /x.x”.BES支持1.0和1.1版本.

  Header

  提供了关于请求的或在消息体里发送的对象的信息.

  optional message

  HTTP消息可以包含数据.在一个请求里,它是发送到服务器的用户类型的数据,或上传的文件.当一个对象伴随着此消息时,请求通常也包含定义它属性的消息头.

  HTTP响应

  在HTTP请求消息的接收之上,服务器发送一个响应消息,它通常包含了请求的资源.

<HTTP version><status_code><reason>

Header1: value1

Header2: value2

Header3: value3

<message>

  HTTP响应变量

  描述

  HTTP_version

  正在运行的HTTP版本,标记为”HTTP /x.x”.BES支持1.0和1.1版本.

  status_code

  状态码的数值,它反映了客户端提出的请求的结果。例如,200(OK)说明了传输成功,404(Not Found)说明了请求的URL没有找到。

  reason

  reason是和状态码相关的文本消息。

  Header

  消息头提供了响应的信息,也提供了消息体中正在发送的对象的信息。

  message

  HTTP消息必须包含数据。在一个响应消息里,它提供了客户端请求的的内容。此响应也包含了定义它的属性的消息头。

  注:应用程序应该检查HTTP响应消息的状态码。任何不是200(OK)的状态码都说明当建立HTTP连接时发生了一个错误。

  Push请求响应状态码

  为push请求连接服务,BlackBerry MDS返回2种响应码:

          PAP(Push Access Protocal)响应码。

          RIM Push响应码。

  注:访问www.wapforum.org获得更多关于PAP响应码的信息。

  RIM Push请求响应码

  RIM Push请求响应码

  描述

  解释

  200

  OK

  请求成功完成。

  400

  任何其他的错误。

  403

  访问控制错误,或者未知的邮件地址或特定的BlackBerry PIN。

  服务器接收了请求,但是不能响应。

  503

  服务器忙,服务不可用。

  当前,服务器不能管理请求,因为暂时的负载或服务器正在维护。

  HTTPS支持

  如果你的应用程序通过Internet访问服务器,为了提过其他的验证和安全,在TLS上建立一个安全的HTTP(HTTPS)连接。

  HTTPS认证(Certificate)管理

  当BlackBerry设备以代理模式请求一个HTTPS连接时,BlackBerry MDS服务为BlackBerry设备建立一个SSL连接。系统管理员配置MDS服务,要么允许连接到未信任的服务器,要么是限制访问信任的服务器,这个配置仅适用代理模式下的连接。在end-to-end模式里,BlackBerry设备建立一个SSL连接。

  在BlackBerry管理器里,系统管理员编辑MDS服务属性,并且设置TLS和HTTP选项,为获得更多信息,参看BES管理指南。

  注:在MDS服务模拟器里,通过设置rimpublic.property文件来允许或拒绝访问未信任的服务器。设置 application.handler.https.allowUntrustedServer参数为true或false。参看177页的“配置 BlackBerry MDS模拟器”获得更多信息。

  如果MDS服务包含认证,MDS服务将信任一个服务器。

  使用keytool安装一个认证

  1. 保存认证。

  2.将认证文件拷贝到MDS服务所在计算机上的C:\Java\j2re1.4.2\lib\security文件夹。

  3. 为了将认证导入到键存储里,请使用keytool,它可以在JRE bin文件夹下找到,例如C:\Java\j2re1.4.2\bin.例如,输入:

  keytool -import -file -keystore cacerts

  访问http://java.sun.com/j2se/1.3/docs/tooldocs/win32/keytool.html 获得更多关于keytool的信息。

  编码转化器

  BlackBerry MDS支持插件的Java应用程序,称为编码转化器,它处理BlackBerry设备发送和接收的数据。

  MDS服务提供下列缺省的编码转化:

  编码转化名

  描述

  WML>WMLC

  将.wml(Wireless Markup Lanuage)转化为一个压缩的格式。

  WMLScript>WMLScriptC

  将MIDlet应用程序为BlackBerry格式。

  JAD>COD :XML>WBXML

  将xml文件转化为下面的WAP二进制XML(.wbxml) MIME类型:application/vnd.wap.wbxml..

  SVG >PME

  将可svg(Scalable Vector Graphics)转化为BlackBerry设备支持的pme(Plazmic Media Engine)二进制格式.

  图像编码转化

  将下列图像的文件类型转化为png文件:

   Jpeg

   Gif

   Tiff

   Pgm

   Ppm

   pnm:包含ASCII和二进制pbm,pgm和ppm文件

   ico

   wbmp

   pbm

   wbmp

   bmp

  注:图像编码转化器将先前的图像格式转化为下面的.PNG MIME类型:image/vnd.rim.png.

  你也可以编写自己的编码转化器完成客户化数据的处理.例如,如果你的应用程序正在和服务器交换数据,而服务器不是为BlackBerry设备设计的,并且发送到服务器端的数据对BlackBerry设备来说没有合适的格式.那么你可能编写一个编码转化器.

  一个编码器可能改变数据格式或删除冗余信息来降低网络流量,并且支持BlackBerry设备上的简单应用程序.例如,你可以编写一个编码转化器将HTML内容转化为WML.

 

0
相关文章