物聯網平台提供PHP語言的雲端SDK供開發人員使用。本文介紹雲端PHP SDK的安裝和配置,及使用PHP SDK調用雲端API的樣本。
安裝PHP SDK
IoT PHP SDK是Alibaba Cloud SDK for PHP的一部分。如果您已安裝Alibaba Cloud SDK for PHP,則無需再安裝IoT PHP SDK。
安裝PHP開發環境。
需安裝PHP 5.5.0或更高版本。訪問PHP官網下載PHP安裝包,並完成安裝。
安裝Composer。
目前,通過Composer管理IoT PHP SDK,因此需在系統中安裝Composer。
Windows系統使用者,請訪問getcomposer.org,下載、安裝Composer-Setup.exe。
使用cURL命令安裝Composer。
curl -sS https://getcomposer.org/installer | php
說明如果由於網路問題無法安裝,可以使用阿里雲Composer全量鏡像。
添加以下依賴,安裝IoT PHP SDK。
composer require alibabacloud/iot
PHP SDK詳情和使用指導,請參見openapi-sdk-php-iot和Alibaba Cloud SDK for PHP。
初始化SDK
以調用華東2(上海)地區的API為例,初始化代碼如下。
首先建立對象$iClientProfile,存放SDK初始化資訊,然後建立DefaultAcsClient對象執行個體$client,通過DefaultAcsClient($iClientProfile)
方法,載入SDK資訊,完成SDK用戶端初始化。
include_once 'aliyun-php-sdk-core/Config.php';
use \Iot\Request\V20180120 as Iot;
//設定您的AccessKeyId/AccessSecret/ProductKey
$accessKeyId = getenv('ACCESS_KEY_ID');
$accessSecret = getenv('ACCESS_KEY_SECRET');
$iClientProfile = DefaultProfile::getProfile("cn-shanghai", $accessKeyId, $accessSecret);
$client = new DefaultAcsClient($iClientProfile);
參數 | 說明 |
$iClientProfile | 用於存放SDK初始化資訊,其中 您可在物聯網平台控制台左上方,查看當前服務所在地區。 地區代碼的表達方法,請參見支援的地區。 |
發起調用
物聯網平台雲端SDK為每個API封裝了一個類,命名為${API名稱}+"Request"
,用於API的調用請求。通過該類的對象執行個體$request
,使用"set"+${請求參數的名稱}
方法,佈建要求參數值。通過初始化SDK的對象執行個體$client,使用getAcsResponse($request)
方法,承載API調用結果。
物聯網平台雲端API,請參見API列表。有關request
中請求參數說明,及response
中返回參數說明,請參見對應API文檔。
本文以調用Pub介面發布訊息到Topic為例。請求參數資訊,請參見Pub。
以下代碼中${iotInstanceId}
為執行個體ID值。您可在物聯網平台控制台的執行個體概覽頁面,查看當前執行個體的ID值。
若有ID值,必須傳入該ID值,否則調用API會失敗。
若無執行個體概覽頁面或ID值,則無需傳入。您需刪除IotInstanceId相關的請求代碼,或傳入空值
""
,否則調用API會失敗。
執行個體的詳細內容,請參見執行個體概述。購買執行個體方法,請參見購買企業版執行個體。常見問題,請參見物聯網平台執行個體相關問題。
$request = new Iot\PubRequest();
$request->setIotInstanceId("iotInstanceId");
$request->setProductKey("productKey");
$request->setMessageContent("aGVsbG93b3JsZA="); //hello world Base64 String.
$request->setTopicFullName("/productKey/deviceName/user/get"); //訊息發送到的Topic全名.
$response = $client->getAcsResponse($request);
print_r($response);
附錄:範例程式碼
前往物聯網平台雲端SDK樣本中心查看或下載API調用的範例程式碼。範例程式碼中包含Java、Python、PHP、.NET和Go版本SDK樣本。
阿里雲OpenAPI開發人員門戶提供API線上調試工具。在API調試頁面,您可以快速檢索和體驗調用API。系統會根據您輸入的參數同步產生各語言SDK的程式碼範例。各語言SDK程式碼範例顯示在頁面右側SDK樣本頁簽下供您參考。在調用結果頁簽下,可查看API調用的真實請求URL和JSON格式的返回結果。