C#代码端:
PHP端调用方式如下:
header("Content-type: text/html; charset=utf-8");
// NuSoap是PHP环境下的WebService编程工具,用于创建或调用WebService。它是一个开源软件,是完全采用PHP语言编写的、通过HTTP收发SOAP消息的一系列PHP类,由NuSphere Corporation(http://dietrich.ganx4.com/nusoap/ )开发。NuSOAP的一个优势是不需要扩展库的支持,这种特性使得NuSoap可以用于所有的PHP环境,不受服务器安全设置的影响。
//包含一个 nusoap库,可以到官网下载 https://sourceforge.net/projects/nusoap/files/latest/download
require_once('libraries\nusoap.php');
require_once('libraries\Xcrypt.php');
$obj= new Xcrypt();
$str="123456|".time();
$pwd=$obj->encode($str,"M12X17B1");
// 创建一个 nusoap客户端
$client = new nusoap_client('http://172.16.1.113:18/TargetService.svc?wsdl',true);
//设置编码
$client->soap_defencoding = 'UTF-8';
$client->decode_utf8 = false;
$client->xml_encoding = 'UTF-8';
//注意头部认证的写法。否则服务器端拿不到数据
$client->setHeaders("
<tns:username xmlns:tns='http://tempuri.org'>yh</tns:username>
<tns:password xmlns:tns='http://tempuri.org'>$pwd</tns:password>
");
//soap_proxy类 通过它可以直接调用这些方法
$proxy = $client->getProxy();
$result = $proxy->GetData(array('username'=>12)); // 调用函数一定要带参数,参数可以为空
// 获取到服务器端返回来的数据,根据数据格式再进行转换
var_dump($result);
exit();