jjzjj

soapClient

全部标签

php - 是否可以指定用于 PHP SoapClient 的传出网络接口(interface)?

我需要将SoapClient绑定(bind)到特定的出站网络接口(interface),但我找不到任何相关文档。这可能吗?如果不是,有哪些可能的解决方法? 最佳答案 您可以将流上下文传递给设置了bindto选项的soapclient构造函数:$opts=array('socket'=>array('bindto'=>'192.168.0.100:0',),);$ctx=stream_context_create($opts);$client=newSoapClient('the.wsdl',array('stream_context

PHP SoapClient 类型映射的行为不同

我有一个Web服务函数,它向PHP客户端返回一组项目。根据项目的数量,PHP返回类型不同。如果函数返回一项,则PHP类型为stdClass如果函数返回多项,则PHP类型为array。在任何一种情况下,它都应该是array。我该怎么做才能实现这一目标?详细信息:来自网络服务函数的结果的var_dump如下所示:如果结果中有一项:array(3){["filterErg"]=>object(stdClass)#37(1){["item"]=>object(stdClass)#38(9)...如果结果中有多个项目:array(3){["filterErg"]=>object(stdClass

php - NuSoap soapClient 调用出现 "Premature end of data in tag html"错误

我正在尝试调用我创建的网络服务,但服务器返回以下错误:Fatalerror:UncaughtSoapFaultexception:[WSDL]SOAP-ERROR:ParsingWSDL:Couldn'tloadfrom'http://www.savepoints.com.br/server.php?WSDL':Prematureendofdataintaghtmlline2in/home/storage/a/39/1c/site1365816459/public_html/cliente.php:5Stacktrace:#0/home/storage/a/39/1c/site1365

PHP SoapClient 无法使用 https WS

我在使用包含https的WS(WSDL)的PHPSoapClient时遇到问题。我的PHP版本是5.2.5。在你问之前,是的,我正在使用PHP的Soap和openSSL扩展。我要访问的网址是:https://id3check.gb.co.uk/gbportalinternational/aspx/id3check_1b.asmx?WSDL我正在使用的代码:$url="https://id3check.gb.co.uk/gbportalinternational/aspx/id3check_1b.asmx?WSDL";$options["connection_timeout"]=25;$

php - 在 wsdl 模式下带有 PHP SoapClient 类的可选参数

使用PHP5.x上的SoapClient类并针对在其方法中具有可选参数的SOAPWeb服务工作,如果您使用非wsdl模式,则不会有任何问题。但是,至少在默认情况下,使用wsdl模式,如果您没有填写所有参数,您将收到如下错误:SOAP-ERROR:编码:对象没有“xxx”属性有没有办法在不使用非wsdl模式且不填写所有参数的情况下避免该错误? 最佳答案 也许这不是WSDL模式的问题,而是代码中字符串编码的问题。如果您的Web服务以UTF-8编码字符串,请确保您使用适当的函数,例如mb_substr(...)而不是substr(...)

php - 更改 SoapClient 选项

可以将$options传递给SoapClient的构造函数。但是我找不到在对象创建之后(在生命周期内)更改此选项的方法。问题:是否可以更改SoapClient的"stream_context"选项?是否可以更改SoapClient的任何选项?...在创建对象之后?代码:__construct($wsdl,$options);//iwanttochangetheseoptionsafterobjectiscreatedclassMySoapClientextendsSoapClient{publicfunctionsetOption($key,$value){//how?}}$sc=ne

php - PHP 5.6 中的 SoapClient 在使用 HTTPS 时发出带有 "key values mismatch"的警告

使用PHP5.6.9(从PHP5.4更改)升级到Debian8后,我在使用HTTPS端点地址调用SOAPWeb服务时收到此警告:Warning:SoapClient::__doRequest():SSLoperationfailedwithcode1.OpenSSLErrormessages:error:0B080074:x509certificateroutines:X509_check_private_key:keyvaluesmismatch接着是SoapFault:Fatalerror:UncaughtSoapFaultexception:[HTTP]ErrorFetching

PHP SoapClient 删除带有名称的元素

我有一个WSDL,它有一个需要属性的元素:ClaimElement就生成的xml而言,它应该如下所示:在foreach循环中,我将一组元素放在一起,并将属性用作键的一部分://$claim=arrayofkey/valuepairs$claim=[...];$claim=new\SoapVar($claim,SOAP_ENC_OBJECT,null,null,'claimclaimId="'.($key+1).'"');$claims['claimclaimId="'.($key+1).'"']=$claim;在将其传递给SoapClient时,元素被删除://$client=new\

php - 如何使用 PHP 的 SoapClient 类使用有状态 Web 服务?

菜鸟问题。我正在开发一个使用有状态Web服务的PHP网站。基本上,我网站的“控制流程”如下:向用户展示了一个页面。用户执行操作。网站的服务器使用用户输入作为参数向网络服务发出请求。WebService的服务器执行请求,并在此过程中从状态A转到状态B。网站的服务器将用户重定向到另一个页面,我们返回到第1步。我的问题是网站无法跟踪请求之间的网络服务状态。如何让网站跟踪网络服务的状态?我正在使用PHP的标准SoapClient类。我已尝试将SoapClient对象序列化为session变量:#ws_client.phpSomeRequest($params)->SomeRequestResu

PHP soapClient 发送自定义 XML

我正在尝试使用来自PHP的soapClient类发出SOAP请求,这是我的代码:$xmlstr=4215002013-09-25T14:31:21+00:00sargentoarensivia@nobody.esXML;$wsdl='http://localhost:8090/mockCustomerManagementSoapHttpBinding?WSDL';$client=newSoapClient($wsdl,array('cache_wsdl'=>WSDL_CACHE_NONE,'cache_ttl'=>86400,'trace'=>true,'exceptions'=>tr