Web服务如何处理那些格式不正确的客户请求?

日期: 2008-04-02 作者:Anne Thomas Manes 来源:TechTarget中国 英文

Web服务如何处理那些格式不正确的客户请求?这些请求会被抛弃吗?我们应该如何装配Web服务,以处理以任何格式出现的任何要求?   如果客户端发送格式不正确或者是无用的SOAP请求,服务可以拒绝这个要求,或者返回一个SOAP错误。在这样的情况下,SOAP错误必须提示错误代码“env:Client”,服务必须在SOAP错误的<defail>元素中提供错误的额外信息。   如果你想让你的服务能够为任何类型的请求服务,那么你必须使用<xsd:any>的框架结构,定义你的服务去接受一个输入信息。例如,WSDL输入消息必须如下描述:   <wsdl:message name=……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

Web服务如何处理那些格式不正确的客户请求?这些请求会被抛弃吗?我们应该如何装配Web服务,以处理以任何格式出现的任何要求?

  如果客户端发送格式不正确或者是无用的SOAP请求,服务可以拒绝这个要求,或者返回一个SOAP错误。在这样的情况下,SOAP错误必须提示错误代码“env:Client”,服务必须在SOAP错误的<defail>元素中提供错误的额外信息。

  如果你想让你的服务能够为任何类型的请求服务,那么你必须使用<xsd:any>的框架结构,定义你的服务去接受一个输入信息。例如,WSDL输入消息必须如下描述:

  <wsdl:message name="anyInput">

  <wsdl:part name="body" element="xsd:any"/>

  </wsdl:message>

  注意,消息结构是WS-I不兼容的,所以我不推荐你以这种方式定义服务。同时这种消息定义不能提供关于你的可能客户端和输入消息的合适格式的任何信息。在你的WSDL文档中定义你对于输入消息格式的期望,是一个不错的主意。

  同时,在构建你的服务的时候,你可能还需要使用“消息”格式类型处理。当使用这种类型的处理时,你的SOAP服务器不需要处理SOAP消息体。它只是将应用程序SOAP作为DOM处理。你的应用程序必须处理DOM。(当然,必须假设消息都是以XML的形式出现。)

  我不能确定,你试图让你的服务可以接受任何类型的请求有任何的价值。例如,你提供一个可以接受商业零售订单的服务,那么输入消息必须包含一个XML文档,该文档根据你的零售框架进行定制。那么当你的服务接受到一个保险合同的时候,它应该如何处理呢?

相关推荐

  • SAP收购CallidusCloud 与Salesforce竞争

    一直被称为后台办公巨头的SAP现在似乎也想在前台办公大展拳脚。 最新的迹象是SAP收购CallidusClou […]

  • 联合创新,携手共赢 华为与Commvault签署全球合作联盟协议

    【中国,上海,2015年9月19日】在2015年华为云计算大会上,全球领先的信息与通信解决方案供应商华为与美国知名的数据管理软件及相关服务主要供应商Commvault签署全球合作联盟协议。基于合作协议,双方将会加大投入数据中心备份解决方案在云化环境下的“可服务化”技术研究 。Commvault公司全球业务发展副总裁Andreas May、华为IT数据中心解决方案总裁马力出席签约仪式。

  • API设计如龙生九子 各不相同

    IT咨询管理公司CA Technologies对API产业做了个问卷调查,问卷内容涉及API设计风格以及管理部署的新动向。调查结果表明,JSON与XML可谓两分天下。

  • API设计:如何正确开发应用程序接口

    在交互组件化软件的世界里,没有比让组件之间以及组件与移动设备和浏览器之间进行连接的应用程序接口(API)更重要的东西了。