匠吉游戏
您的当前位置:首页php怎么调用自建证书的webservice

php怎么调用自建证书的webservice

来源:匠吉游戏


这个问题有人问过。国内网站这方面资料较少。 我这边来简单讲一下

1. 首先先通过各种节操手段来使 apache 支持https 的方式。

2. 然后使用SoapDiscovery.class.php (百度一下,到处都是) 创建一个webservice

3. 于是我们就可以访问 https://xxx/abc.php?wsdl 。 注意这里是单向认证,并不验证客户端。

如果是php 的soapclient访问 不ssl加密的webservice ,那实在太简单。没啥好说的。

如果是ssl过后的呢?

代码应该怎么写

$context = stream_context_create(array(
 ‘ssl’ => array(
 ‘verify_peer’ => false,
 ‘allow_self_signed’ => true //这一步很重要,代表是否允许自建证书。因为到权威机构申请证书是要钱的
 )
));
$client = new SoapClient(null, array( 
 ‘location’ => ‘https://xxxx/abc.php?wsdl’, //这里写你的webservice地址 
 ‘uri’ => ‘urn:czService’, //你的wsdl文件中会有 targetNamespace 自己找找
 ‘stream_context’ => $context
));
$client->XXX // 这里尽情的执行你的方法吧

更多PHP相关知识,请访问PHP中文网!

显示全文