如何创建soap客户端


How to create a soap client

我真的很喜欢编写php和soap。我想申请这项服务:http://www.artimesaj.com/services/artimesaj.asmx?op=TekMesajCokNumara但我不知道该怎么办。我对这个网站一无所知。

最后,这是什么?我应该做什么:

  POST /services/artimesaj.asmx HTTP/1.1
  Host: www.artimesaj.com
  Content-Type: text/xml; charset=utf-8
  Content-Length: length
  SOAPAction: "http://tempuri.org/TekMesajCokNumara"

首先,构建一个SOAPClient对象,传入机器可读服务描述(WSDL)的URL:

$client = new SOAPClient('http://www.artimesaj.com/services/artimesaj.asmx?WSDL');

然后,您需要为<securty>部分添加"SOAP头":

$header = new SoapHeader(
     'http://tempuri.org/', 
     'securty',
     array(
         'KullaniciAdi' => '???',
         'Parola' => '???',
         'Orijin' => '???'
     )
);
$client->__setSoapHeaders($header);

然后,您可以调用服务中定义的"操作"(函数)之一,例如TekMesajCokNumara:

$response = $client->TekMesajCokNumara(array(
     'message' => '???',
     'numbers' => array(
        'TelefonNo' => array(
           'TelNo' => '???'
        ),
        'TelefonNo' => array(
           'TelNo' => '???'
        )
      ),
      'date' => '???'
));

然后,SOAP库会将您的所有参数转换为适当的XML,将其发送到服务(使用类似于您问题中的请求),并向您提供响应;如果一切顺利,你不需要知道这意味着什么,它只会起作用。

显然,你需要找到一些关于这些论点实际应该是什么的文档

根据我的经验,让SOAP正确交互可能有点麻烦,我绝对不能保证上面的代码会正常工作,也不能保证会帮助您调试它,但希望它能为您提供一个应该编写的代码示例。