emqx ws转成wss

摘要:
无效的:!aNULL:!MD5:!注意:!错误){console.log(“订阅成功”);client.publish(“hello”,“HelloEMQ”,{qos:1,rein:false},(Error)=˃{console.log(Error | |“发布成功”)}))

主要是在nginx里加

把8083转成443

下面是完整nginx配置

server {
    listen                     443;
    server_name                localhost;
    root                       html;
    index                      index.html index.htm;
    ssl                        on;
    ssl_certificate            /root/hserver/ssl/XXXXXX.pem;
    ssl_certificate_key        /root/hserver/ssl/XXXXXX.key;
    ssl_ciphers                ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_prefer_server_ciphers  on;
    ssl_protocols              TLSv1 TLSv1.1 TLSv1.2;
    ssl_session_timeout        5m;

    location / {
        root        html;
        index       index.html index.htm;
        proxy_pass  http://localhost:3000;
    }

    location /mqtt {
        access_log          //mnt/logs/emqtt.log;
        proxy_pass          http://localhost:8083/mqtt;
        proxy_read_timeout  60s;
        proxy_set_header    Host $host;
        proxy_set_header    X-Real_IP $remote_addr;
        proxy_set_header    X-Forwarded-for $remote_addr;
        proxy_http_version  1.1;
        proxy_set_header    Upgrade $http_upgrade;
        proxy_set_header    Connection Upgrade;
    }
}

  

下面是客户端测试的东西:

<script src="https://unpkg.com/mqtt/dist/mqtt.min.js"></script>

<script>
    // 将在全局初始化一个 mqtt 变量
    //console.log(mqtt)
	// 连接选项
const options = {
      connectTimeout: 4000, // 超时时间
      // 认证信息
      clientId: 'emqx-connect-via-webstest',
      username: 'user',
      password: 'pass',
}

const client = mqtt.connect('wss://yun.xxxx.cn/mqtt', options)

client.on('connect', (e) => {
    console.log('成功连接服务器')
    
    // 订阅一个主题
    client.subscribe('hello', { qos: 1 }, (error) => {
        if (!error) {
            console.log('订阅成功');
            client.publish('hello', 'Hello EMQ', { qos: 1, rein: false }, (error) => {
                console.log(error || '发布成功')
            })
        }
    })
})

</script>

  

免责声明:文章转载自《emqx ws转成wss》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇四舍五入[银行家算法]画画板--第三方开源--DrawableView下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

MQTT协议详解一

首先给出MQTT协议的查看地址:http://public.dhe.ibm.com/software/dw/webservices/ws-mqtt/mqtt-v3r1.html 当然也有PDF版的,百度一下,不过个人感觉不是官网上的字体和排版最舒服。 那么这个协议是用做什么或有什么特色呢?下面是mqtt.org上的首段介绍: It was designed...

MQTT

MQTT简介 mqtt基于订阅者模型架构,客户端如果互相通信,必须在同一订阅主题下,即都订阅了同一个topic,客户端之间是没办法直接通讯的。订阅模型显而易见的好处是群发消息的话只需要发布到topic,所有订阅了这个topic的客户端就可以接收到消息了。 发送消息必须发送到某个topic,重点说明的是不管客户端是否订阅了该topic都可以向topic发送了...

MQTT 简介及协议原理

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种构建于TCP/IP协议上基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。做为一种低开销、低带宽...

esp8266物联网开发四:MQTT再论部控

之前利用点灯科技的库来使小爱同学控制LED的过程中,我们大略提到了一下MQTT的整体流程,由于其MQTT服务器是由点灯科技提供的,所以对其中的很多连接细节,我们并不知道,本节我们准备通过搭建本地的MQTT服务器,然后通过MQTT Client向MQTT服务器发送控制命令,来控制我们的LED灯。 首先,我们需要启动MQTT服务器,启动方式我们就不需要多说了,...

ESA2GJK1DH1K升级篇: 阿里云物联网平台 OTA: 关于阿里云物联网平台 OTA 的升级流程说明

前言   鉴于有些用户直接想使用现成的物联网平台实现 OTA 远程升级   我就写一写这系列的文章   首先大家需要学习完这部分   https://www.cnblogs.com/yangfengwu/p/11828777.html    现在说一下具体流程 新增固件   一,选择物联网平台里面的          固件名称: 随意     所属产品:...

MQTT协议简记

一、定义 MQTT -MQ Telemetry Transport 轻量级的 machine-to-machine 通信协议。 publish/subscribe模式。 基于TCP/IP。 支持QoS。 适合于低带宽、不可靠连接、嵌入式设备、CPU内存资源紧张。 是一种比较不错的Android消息推送方案。 FacebookMessenger采用了MQT...