我真的很喜欢编写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正确交互可能有点麻烦,我绝对不能保证上面的代码会正常工作,也不能保证会帮助您调试它,但希望它能为您提供一个应该编写的代码示例。