447
阿裏雲
JavaScript 發消息示例__JavaScript 接入示例_MQTT 接入(物聯)_消息隊列 MQ-阿裏雲
本文主要介紹如何使用 JavaScript 客戶端收發 MQTT 消息,並給出示例代碼供前期開發測試參考。
注意:
本文給出的實例均基於 Eclipse Paho JavaScript SDK 實現,該 SDK 下載請參見MQTT 接入準備。如使用其他第三方的客戶端,請適當修改。
1. 資源申請
使用 MQ 提供的 MQTT 服務,首先需要核實應用中使用的 Topic 資源是否已經申請,如果沒有請先去控製台申請 Topic,Group ID 等資源。
申請資源時需要根據需求選擇對應的 Region,例如,MQTT 需要使用華北2的接入點,那麼 Topic 等資源就在華北2 申請,資源申請具體請參見申請 MQ 資源。
注意:MQTT 使用的多級子 Topic 不需要申請,代碼裏直接使用即可,沒有限製。
2. MQTT 發送消息
本段示例代碼演示如何使用 JavaScript 客戶端收發 MQTT 消息。
config.js 文件
host = 'mqtt-test.cn-qingdao.aliyuncs.com';// MQTT公測Region的接入點域名,參考MQTT環境準備章節port = 80;//WebSocket協議服務端口topic = 'XXXXXXX';//需要操作的TopicuseTLS = false;//是否走加密TLS協議accessKey = 'XXXXXX';//賬號的AccessKey,在阿裏雲控製台查看secretKey = 'XXXXXX=';//賬號的的SecretKey,在阿裏雲控製台查看cleansession = true;groupId='GID_XXXX';clientId=groupId+'@@@XXXX';//GroupId@@@DeviceId,由控製台申請的Group ID和自己指定的Device ID組合構成
發送程序:
<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="https://www.w3.org/1999/xhtml"><head><title>Aliyun Mqtt Websockets</title><meta name="viewport" content="width=device-width, initial-scale=1.0"><script src="mqttws31.js" type="text/javascript"></script><script src="config.js" type="text/javascript"></script><script src="crypto-js.js" type="text/javascript"></script><script type="text/javascript">var mqtt;var reconnectTimeout = 2000;var username =accessKey;var password=CryptoJS.HmacSHA1(groupId,secretKey).toString(CryptoJS.enc.Base64);function MQTTconnect() {mqtt = new Paho.MQTT.Client(host,//MQTT域名port,//WebSocket端口clientId//客戶端ClientId);var options = {timeout: 3,onSuccess: onConnect,onFailure: function (message) {setTimeout(MQTTconnect, reconnectTimeout);}};mqtt.onConnectionLost = onConnectionLost;mqtt.onMessageArrived = onMessageArrived;if (username != null) {options.userName = username;options.password = password;}mqtt.connect(options);}function onConnect() {// Connection succeeded; subscribe to our topicmqtt.subscribe(topic, {qos: 0});message = new Paho.MQTT.Message("Hello mqtt!!");//set bodymessage.destinationName =topic;// set topicmqtt.send(message);}function onConnectionLost(response) {setTimeout(MQTTconnect, reconnectTimeout);};function onMessageArrived(message) {var topic = message.destinationName;var payload = message.payloadString;console.log("recv msg : "+topic+" "+payload);};MQTTconnect();</script></head></html>
最後更新:2016-12-19 15:59:50
上一篇:
Android 收發消息示例__Android 接入示例_MQTT 接入(物聯)_消息隊列 MQ-阿裏雲
下一篇:
MQ 客戶端收發 MQTT 消息__Java 接入示例_MQTT 接入(物聯)_消息隊列 MQ-阿裏雲
步驟3:驗證配置生效__快速入門(非網站業務)_DDoS 高防IP-阿裏雲
數加控製台幫助__平台介紹_數加平台介紹-阿裏雲
32T 塊存儲分區__擴容磁盤概覽_磁盤_用戶指南_雲服務器 ECS-阿裏雲
禁止直播流推送__直播流操作接口_API 手冊_CDN-阿裏雲
1.1 登陸ECS實例__ECS快速開始_雲服務器ECS 體驗_體驗館-阿裏雲
CPU__常用指標_使用手冊_性能測試-阿裏雲
域名展示頁常見問題FAQ___域名展示頁_域名交易_域名-阿裏雲
設置日誌__管理存儲空間_控製台用戶指南_對象存儲 OSS-阿裏雲
簡單深度學習離線訓練__應用場景_產品簡介_高性能計算-阿裏雲
獲取聯係人模板編號__附錄_API文檔_域名-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲