我使用的WSDL有两个端口 - 一个有soap绑定,另一个有HTTP绑定。据我所知,SOAP是一种用于消息传递的协议,但仍然使用HTTP作为传输协议。那么使用这两个端口有什么区别?
包含绑定和服务的WSDL的一部分:
<wsdl:binding name="OperationServiceNextGenHttpBinding" type="tns:OperationServiceNextGenPort">
<http:binding verb="POST"/>
<wsdl:operation name="operation">
<http:operation location="/operation"/>
<wsdl:input>
<mime:content type="application/x-www-form-urlencoded"/>
</wsdl:input>
<wsdl:output>
<mime:content type="text/xml"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:binding name="OperationServiceNextGenSOAPBinding" type="tns:OperationServiceNextGenPort">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="operation">
<soap:operation soapAction="http://some.schema.com/marketplace/search/v1/services/operation"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="OperationServiceNextGen">
<wsdl:documentation>
<version>1.1.10</version>
</wsdl:documentation>
<wsdl:port binding="tns:OperationServiceNextGenHttpBinding" name="OperationServiceNextGenHttpPort">
<http:address location="https://svcs.ebay.com/services/search/v1/OperationServiceNextGen"/>
</wsdl:port>
<wsdl:port binding="tns:OperationServiceNextGenSOAPBinding" name="OperationServiceNextGenSOAPPort">
<soap12:address location="https://svcs.ebay.com/services/search/v1/OperationServiceNextGen"/>
</wsdl:port>
</wsdl:service>
让我试着简单解释一下。
一个有肥皂绑定,另一个有HTTP绑定
SOAP绑定SOAP绑定定义了SOAP XML格式,这意味着请求/响应必须如何以及它应包含哪些XML节点。
HTTP绑定
这谈到SOAP消息交换的传输协议将是HTTP / HTTPS。
据我所知,SOAP是一种用于消息传递的协议,但仍然使用HTTP作为传输协议。那么使用这两个端口有什么区别?
传输协议是HTTP的大部分时间都是如此,但可能并非始终如此,SOAP可以通过SMTP或FTP传输。
通过SMTP查看SOAP信息。 https://teaching.shu.ac.uk/aces/ict/de/web_services/soap_over_http.htm# https://www.tutorialspoint.com/wsdl/wsdl_binding.htm