header5是什么元件,header是什么元件( 二 )


1.一个One-way操作的例子:message name=newTermValues part name=term type=xs:string/ part name=value type=xs:string//messageportType name=glossaryTerms operation name=setTerm input name=newTerm message=newTermValues/ /operation/portType 在这个例子中,端口glossaryTerms定义了一个名为setTerm的one-way操作 。这个setTerm操作可接受新术语表项目消息的输入,这些消息使用一条名为newTermValues的消息,此消息带有输入参数term和value 。不过,没有为这个操作定义任何输出 。2.一个Request-response操作的例子:message name=getTermRequest part name=term type=xs:string//messagemessage name=getTermResponse part name=value type=xs:string//messageportType name=glossaryTerms operation name=getTerm input message=getTermRequest/ output message=getTermResponse/ /operation/portType在这个例子中,端口“glossaryTerms”定义了一个名为“getTerm”的request-response操作 。“getTerm”操作会请求一个名为“getTermRequest”的输入消息,此消息带有一个名为“term”的参数,并将返回一个名为 “getTermResponse”的输出消息,此消息带有一个名为“value”的参数 。WSDL绑定一个绑定的例子:message name=getTermRequest part name=term type=xs:string//messagemessage name=getTermResponse part name=value type=xs:string//messageportType name=glossaryTerms operation name=getTerm input message=getTermRequest/ output message=getTermResponse/ /operation/portTypebinding type=glossaryTerms name=b1 soap:binding style=document transport=http://schemas.xmlsoap.org/soap/http / operation soap:operation soapAction=http://example.com/getTerm/ inputsoap:body use=literal//input outputsoap:body use=literal//output /operation/bindingbinding元素有“name”和“type”两个属性 。“name”属性定义binding的名称,而“type”属性指向binding的端口,在这个例子中是“glossaryTerms”端口 。soap:binding元素有“style”和“transport”两个属性 。“style”属性可取值为“rpc”或“document” 。在这个例子中我们使用“document” 。“transport”属性定义SOAP使用的协议,在这个例子中使用HTTP 。operation元素定义了每个端口提供的操作符 。对于每个操作,相应的SOAP行为都需要被定义 。同时必须知道如何对输入和输出进行编码 。在这个例子中使用了“literal” 。14.2 应用案例
案例说明
这里以天气预报服务为例 。
400个国内外主要城市天气预报Web服务访问地址:Endpoint: http://ws.webxml.com.cn/WebServices/WeatherWebService.asmxDisco: http://ws.webxml.com.cn/WebServices/WeatherWebService.asmx?discoWSDL: http://ws.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl操作: getSupportCity功能: 查询本天气预报Web Services支持的国内外城市或地区信息请求方式: HTTP/POST接口地址: http://ws.webxml.com.cn/WebServices/WebServices/WeatherWebService.asmx输入参数: byProvinceName = 指定的洲或国内的省份,若为ALL或空则表示返回全部城市返回数据: 一个一维字符串数组String(),结构为:城市名称(城市代码)【header5是什么元件,header是什么元件】操作步骤
1.添加线程组;2.添加HTTP请求取样器并配置;3.在取样器节点下添加“HTTP Header Manager”并配置;4.在取样器节点下添加查看结果树;5.执行看结果 。使用SOAP1.1时配置测试HTTP请求配置:1.Server Name or IP: ws.webxml.com.cn2.Method: POST3.Path: /WebServices/WebServices/WeatherWebService.asmx4.Content encoding: utf-85.Body Data:?xml version=1.0 encoding=utf-8?soap:Envelope xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xmlns:xsd=http://www.w3.org/2001/XMLSchema xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/ soap:Body getSupportCity xmlns=http://WebXml.com.cn/ byProvinceName湖南/byProvinceName /getSupportCity /soap:Body/soap:Envelope其中湖南为传入的参数值(byProvinceName为参数名)POST请求传递数据为SOAP消息,格式为XML 。需要将SOAP消息放入Body Data中发送给服务器,并且需要告诉服务器对应的Content-Type 。故需要添加一个“HTTP Header Manager”配置元件,在其中添加两个首部“Content-Type”与“SOAPAction”,其中“SOAPAction”用来标识SOAP HTTP请求的目的地,其值是个URI地址 。在SOAP1.1中这个首部若其值为空串(),表示SOAP消息的目的地由HTTP请求的URI标识;无值则表示没有指定这条消息的目的地 。1.Content-Type: text/xml; charset=utf-82.SOAPAction: http://WebXml.com.cn/getSupportCity配置如下图所示:使用SOAP1.2时配置测试HTTP请求配置只需要将Body Data修改,其他配置项保持不变:?xml version=1.0 encoding=utf-8?soap12:Envelope xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xmlns:xsd=http://www.w3.org/2001/XMLSchema xmlns:soap12=http://www.w3.org/2003/05/soap-envelope soap12:Body getSupportCity xmlns=http://WebXml.com.cn/ byProvinceNamestring/byProvinceName /getSupportCity /soap12:Body/soap12:Envelope需要修改HTTP Header Manager配置元件,在SOAP1.2规范中,SOAPAction首部被Content-Type的“action”属性所取代,但其作用和工作原理都没有变化 。Content-Type: application/soap+xml;charset=UTF-8;action=http://WebXml 。com 。cn/getSupportCity配置如下图所示: