首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何创建SOAP1.2请求

如何创建SOAP1.2请求
EN

Stack Overflow用户
提问于 2014-03-26 20:11:14
回答 2查看 17K关注 0票数 4

我需要帮助创建SOAP1.2请求。我所拥有的就是:

示例请求:

代码语言:javascript
复制
POST /WS/PriceList.asmx HTTP/1.1
Host: gateway.systemb2b.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?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>
    <GetProducts xmlns="http://gateway.systemb2b.com/schemas/Product" />
  </soap12:Body>
</soap12:Envelope>

示例响应:

代码语言:javascript
复制
HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?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>
    <GetProductsResponse xmlns="http://gateway.systemb2b.com/schemas/Product">
      <GetProductsResult>xml</GetProductsResult>
    </GetProductsResponse>
  </soap12:Body>
</soap12:Envelope>

非常感谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-26 21:11:27

代码语言:javascript
复制
<?php
    $client = new SoapClient("URL/OF/YOUR/WSDL", array('soap_version' => SOAP_1_2));
    $result = $client('GetProducts');
?>
票数 10
EN

Stack Overflow用户

发布于 2020-07-15 09:19:41

我希望这个例子能帮助你解决你的问题。万事如意!

代码语言:javascript
复制
// SOAP 1.2 client
$options = array('soap_version'=>SOAP_1_2, 'exceptions'=>true, 'trace'=>1);

$client = new SoapClient('https://www.example.com/example.svc/SSL?wsdl', $options);

$actionHeader = new SoapHeader('http://www.w3.org/2005/08/addressing','Action','http://tempuri.org/xxxx/GetResult');

$toActionHeader = new SoapHeader('http://www.w3.org/2005/08/addressing','To','https://www.example.com/example.svc/SSL?wsdl');

$headerbody = array('Action' => $actionHeader,'To' => $toActionHeader);
           
$client->__setSoapHeaders($headerbody);

$client->__setLocation('https://www.example.com/example.svc/SSL');

$params = array( "param1"=>"abc", "param2"=>"ab123",c"param3"=>"ab1111" );  

$client->__soapCall("GetResult", array($params));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22672018

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档