php怎麼呼叫自建證書的webservice

2020-07-16 10:05:48
這個問題有人問過。國內網站這方面資料較少。 我這邊來簡單講一下

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怎麼呼叫自建證書的webservice的詳細內容,更多請關注TW511.COM其它相關文章!