我正在SMS Project的在線購物商店工作,目的是當客戶下單時系統應該在結帳時自動發送客戶提供的短信。HTTPS URL不能在PHP中工作
SMS公司爲我們提供了API文檔。首先,他們需要生成會話ID的身份驗證過程,並使用會話ID向用戶發送短信。
驗證碼:
$msisdn = 'abc';
$password = 'xyz';
$session_req="https://telenorcsms.com.pk:27677/corporate_sms2/api/auth.jsp?msisdn=".$msisdn."&password=".$password;
$xmlResponse = simplexml_load_file('https://telenorcsms.com.pk:27677/corporate_sms2/api/auth.jsp?msisdn=abc&password=xyz');
$sessionID = $xmlResponse->corpsms->data;
var_dump($sessionID);
echo "Session ID: " . $sessionID;
現在的問題是我無法獲取會話ID。當我使用var_dump($sessionID);
比NULL是輸出,如果我嘗試通過使用echo "Session ID: " . $sessionID;
顯示屏幕上沒有任何顯示。如果我使用header('Location:'.$session_req);
以下的代碼是上面的URL的響應併成功顯示會話ID。
成功響應:
<?xml version="1.0" encoding="UTF-8" ?>
<corpsms>
<command>Auth_request</command>
<data>Session ID</data>
<response>OK</response>
</corpsms>
會話ID店的XML結構及其在不同的網址,但我的文件是在不同的URL。 (http://example.com/neworder.php)。 任何人都可以讓我知道如何將會話ID存儲在PHP中的變量,以進一步發送短信? 重要的一點是會話ID將在30分鐘不活動後過期。 下面是使用會話ID發送短信的網址:
https://telenorcsms.com.pk:27677/corporate_sms2/api/sendsms.jsp?session_id=xxxx&to=923xxxxxxxxx&text=xxxx&mask=xxxx
在此先感謝。
MUNEEB
你嘗試過使用捲曲嗎? – tousif
是的,但沒有找到解決方案,因爲目的是獲取會話ID值。 –
$ ch = curl_init(); \t \t curl_setopt($ ch,CURLOPT_URL,$ session_req); \t \t curl_setopt($ ch,CURLOPT_RETURNTRANSFER,true); \t \t //對於SSL證書 \t \t curl_setopt($ ch,CURLOPT_SSL_VERIFYPEER,false); \t \t $ response = curl_exec($ ch); \t \t $ tokens = explode(「\ n」,trim($ response)); \t \t curl_close($ ch); \t \t var_dump($ response); –