Demo工程
本文介紹云消息隊列 MQTT 版的Demo工程,包含各種應用場景的使用指導,請參見程序源碼的文檔注釋進行理解。
獲取多語言Demo
示例代碼全集請參見mqtt-demo。
下載完成后解壓即可看到本地新增了mqtt-demo-main文件夾。其中一級文件夾是按照開發語言進行分類,請按照實際需求進行調試。
Java
場景 | 下載地址 |
單獨使用MQTT消息收發示例 | |
MQTT簽名示例 | |
MQTT Token示例 | |
MQTT SSL加密示例 | |
MQTT發送消息RocketMQ訂閱消息示例 | |
RocketMQ發送消息MQTT訂閱消息示例 | |
MQTT發送順序消息RocketMQ訂閱順序消息示例 | |
MQTT客戶端異步上下線通知示例 | |
MQTT SSL雙向認證示例 |
Python
場景 | 下載地址 |
單獨使用MQTT消息收發示例 | |
MQTT簽名示例 | |
MQTT SSL加密示例 |
PHP
場景 | 下載地址 |
單獨使用MQTT消息收發示例 | |
MQTT簽名示例 | |
MQTT Token示例 | |
MQTT發送順序消息RocketMQ訂閱順序消息示例 |
C
場景 | 下載地址 |
單獨使用MQTT消息收發示例 | |
MQTT簽名示例 | |
MQTT SSL加密示例 |
更多C語言依賴庫,請參見eclipse/paho.mqtt.c。
.NET
場景 | 下載地址 |
單獨使用MQTT消息收發示例 | |
MQTT簽名示例 | |
MQTT SSL加密示例 |
JavaScript
場景 | 下載地址 |
單獨使用MQTT消息收發示例 | |
MQTT簽名示例 | |
MQTT SSL加密示例 | |
WebSocket消息收發示例 |
iOS
場景 | 下載地址 |
單獨使用MQTT消息收發示例 | |
MQTT簽名示例 | |
MQTT SSL加密示例 |
Demo使用須知
如果搭配使用云消息隊列 MQTT 版和其他后端消息存儲產品,如云消息隊列 RocketMQ 版,您需理解消息結構和屬性映射關系,詳細信息,請參見MQTT與RocketMQ的消息結構映射。
各種開發語言的Demo程序完整程度可能不一致,后續會陸續更新。如果有特性暫未有Demo,請參見Java的示例下載相應語言的SDK后自行測試。
配置訪問憑證
在使用示例代碼前,需要配置環境變量MQTT_AK_ENV和MQTT_SK_ENV。配置方法如下:
阿里云賬號AccessKey擁有所有API的訪問權限,若泄露會威脅到該賬號下所有資源的安全。為保證賬號安全,強烈建議您使用RAM用戶的AccessKey進行API訪問或日常運維。獲取方式,請參見創建AccessKey。
Linux和macOS系統配置方法
創建
.bash_profile
文件說明如果是第一次設置環境變量,可以使用
touch ~/.bash_profile
創建一個配置文件,如果已經存在配置文件,則使用vim ~/.bash_profile
命令直接編輯文件。touch ~/.bash_profile vim ~/.bash_profile
配置
.bash_profile
文件# 將以下命令中的<ACCESS_KEY_ID>和<ACCESS_KEY_SECRET>替換為您自己的AccessKey ID和AccessKey Secret。 export MQTT_AK_ENV=<ACCESS_KEY_ID> export MQTT_SK_ENV=<ACCESS_KEY_SECRET>
編輯完成后保存退出。
使用
.bash_profile
文件# 使配置文件生效 source ~/.bash_profile # 顯示配置是否生效 echo $MQTT_AK_ENV
若返回正確的AccessKey,則說明配置成功。
環境變量配置完成之后,為確保新的設置被正確應用,您可能需要重啟相關的開發工具(IDE等)或服務。
Windows系統配置方法
通過圖形用戶界面GUI
操作步驟
以下為Windows 10中通過圖形用戶界面設置環境變量的步驟。
在桌面右鍵單擊此電腦,選擇屬性>高級系統設置>環境變量>系統變量/用戶變量>新建,完成以下配置:
變量
示例值
AccessKey ID
變量名:MQTT_AK_ENV
變量值:LTAI4GDty8ab9W4Y1D****
AccessKey Secret
變量名:MQTT_SK_ENV
變量值:IrVTNZNy5yQelTETg0cZML3TQn****
測試設置是否成功
單擊開始(或快捷鍵:Win+R)> 運行(輸入 cmd)> 確定(或按 Enter 鍵),打開命令提示符,執行
echo %MQTT_AK_ENV%
、echo %MQTT_SK_ENV%
命令。若返回正確的AccessKey,則說明配置成功。
通過命令行提示符CMD
操作步驟
以管理員身份打開命令提示符,并使用以下命令在系統中新增環境變量。
setx MQTT_AK_ENV LTAI4GDty8ab9W4Y1D**** /M setx MQTT_SK_ENV IrVTNZNy5yQelTETg0cZML3TQn**** /M
其中
/M
表示系統級環境變量,設置用戶級環境變量時可以不攜帶該參數。測試設置是否成功
單擊開始(或快捷鍵:Win+R)> 運行(輸入 cmd)> 確定(或按 Enter 鍵),打開命令提示符,執行
echo %MQTT_AK_ENV%
、echo %MQTT_SK_ENV%
命令。若返回正確的AccessKey,則說明配置成功。
通過Windows PowerShell
在PowerShell中,設置新的環境變量(對所有新會話都有效):
[System.Environment]::SetEnvironmentVariable('MQTT_AK_ENV', 'LTAI4GDty8ab9W4Y1D****', [System.EnvironmentVariableTarget]::User)
[System.Environment]::SetEnvironmentVariable('MQTT_SK_ENV', 'IrVTNZNy5yQelTETg0cZML3TQn****', [System.EnvironmentVariableTarget]::User)
為所有用戶設置環境變量(需要管理員權限):
[System.Environment]::SetEnvironmentVariable('MQTT_AK_ENV', 'LTAI4GDty8ab9W4Y1D****', [System.EnvironmentVariableTarget]::Machine)
[System.Environment]::SetEnvironmentVariable('MQTT_SK_ENV', 'IrVTNZNy5yQelTETg0cZML3TQn****', [System.EnvironmentVariableTarget]::Machine)
設置臨時的環境變量(僅當前會話有效):
$env:MQTT_AK_ENV = "LTAI4GDty8ab9W4Y1D****"
$env:MQTT_SK_ENV = "IrVTNZNy5yQelTETg0cZML3TQn****"
在PowerShell中,執行Get-ChildItem env:MQTT_AK_ENV
、Get-ChildItem env:MQTT_SK_ENV
命令。若返回正確的AccessKey,則說明配置成功。
環境變量配置完成之后,為確保新的設置被正確應用,您可能需要重啟相關的開發工具(IDE等)或服務。
更多信息
示例代碼僅供參考使用,獲取相應語言SDK請參見SDK下載。