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中文网!

以上就是php怎么调用自建证书的webservice的详细内容,更多请关注求知技术网其它相关文章!

发表评论

电子邮件地址不会被公开。 必填项已用*标注