這個問題有人問過。國內網站這方面資料較少。我這邊來簡單講一下
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的詳細內容。更多資訊請關注PHP中文網其他相關文章!