我已经花了一些时间来解决问题。我有一个端点,我想要发送一些数据并接收响应。
我在网上看到了Zend\Soap\Server用于构建方法,然后Zend\Soap\Client可以使用这些方法。我希望有人能解释一下在这些方法中写什么,以及这是如何帮助获得响应的。
$client =新客户端($this->wsdl,$client(‘soap_version’=> SOAP_1_1));
现在我们可以$client->SOMEMETHOD();
我的问题是:“我从哪里获得这个方法?”,“方法将做什么?”,以及“我如何使用它?”
发布于 2019-10-18 16:14:45
SOAP短基
SOAP允许请求在线服务。(用作客户端代码)例如,您可以查询AMAZON上的产品,知道其价格等。
SOAP有两种不同的工作方式:
方式一: wdsl模式
创建到SOAP客户端的连接时,必须提供一个将提供XML文件的链接: wdsl
示例:在浏览器中键入:http://webservices.amazon.com/AWSECommerceService/AWSECommerceService.wsdl
恭喜:您看到(发现)了查询AMAZON的方法!
这个XML文件告诉您可以询问的内容:价格、产品信息、搜索等。
对于每个路由(每个可能的查询),您必须提供的参数,这些参数的有效性检查:例如:路由=搜索文章,param1 =文章名称,类型的参数=字符串,等等...
$client = new Client($this->wsdl, array( 'soap_version' => SOAP_1_1 ) )创建客户端对象:
xml $->wsdl一个指向xml文件的链接(发现部分)
这是一个URI字符串:示例:"http://webservices.amazon.com/AWSECommerceService/AWSECommerceService.wsdl“
数组( 'soap_version‘=> SOAP_1_1 ) =I使用SOAP版本xx,您可以在此数组中添加更多选项。
方式2:非wdsl模式
您没有提供wsdl链接或文件...但是你必须知道如何处理请求和响应。
深度学习
在google上搜索SOAP的教程,有用于测试目的的在线请求者,等等…然后在zend中使用它
发布于 2019-10-18 17:09:53
我解决了我的问题,所以我把它贴在这里,让所有人都能理解。
$client = new Client($wsdl, ['soap_version' => SOAP_1_1]);
$params = [
'args0' => [
'_PRCODASSOC' => null,
'_PRCODDELEG' => null,
'_PRCODFISCALE' => 'BRSLSN312213TY',
'_PRCODFSDDIRI' => null,
'_PRTIPOOPERAWS' => 'REPFAM'
]
];
$client->ws_fam_sgf($params);
$result = $client->getLastResponse();
die($result); 我所做的只是添加了'args‘=> [],并在该键中添加了我的所有参数。
https://stackoverflow.com/questions/58436267
复制相似问题