美文网首页
在web前端上使用MQTT

在web前端上使用MQTT

作者: Songzh | 来源:发表于2018-03-21 20:11 被阅读0次

前言

原理很简单,利用mosca创建好MQTT服务器后,然后通过websocket就能使用了。如果没有搭建服务器请参考下面这篇文章
利用nodejs快速搭建mqtt服务器
因为都用的是nodejs,所以我们可以将web服务器和mqtt服务器写在一个文件下,但是要设置不同的端口避免发生冲突。所以这就是,物联网使用nodejs的好处。

Demo

1.在之前创建好的服务器下添加如下代码(其实就是设置一下http端口)

  var mosca = require("mosca");
  var server = new mosca.Server({
  http: {
    port: 3000,
    bundle: true,
    static: './'
  }
});
服务器.png

2.客户端调用(官方案例)

<html>
  <head>
 <script src="/mqtt.js"></script>
  </head>
  <body>
    <script>
      var client = mqtt.connect();

      client.subscribe("mqtt/demo");

      client.on("message", function(topic, payload) {
        alert([topic, payload].join(": "));
        client.end();
      });

      client.publish("mqtt/demo", "hello world!");
    </script>
  </body>
</html>
客户端demo.png

解释:因为我的mqtt服务器是搭建在本地的所以我的ip应该为127.0.0.1;且在服务器中设置的端口为7410,所以再调用js文件时,应该如上图所示。

在测试自己是否调用成功的话,可以将链接复制到浏览器上,如果链接是正确的则会出现如下图所示。


调用mqtt.js.png

总结:通过web前端对mqtt的调用大大方便了一些简单事件的处理,比如实时显示温湿度,控制led的开关等不需要存储数据的事件。

:官方链接 https://github.com/mcollina/mosca/wiki/MQTT-over-Websockets

相关文章

  • 在web前端上使用MQTT

    前言 原理很简单,利用mosca创建好MQTT服务器后,然后通过websocket就能使用了。如果没有搭建服务器请...

  • MQTT工具分享

    EMQ-MQTT Web Toolkit MQTT Web Toolkit 是 EMQ 最近开源的一款 MQTT ...

  • 使用Node.js实现mqtt协议

    记录一下自己学习mqtt的过程,如何从零开始使用Node.js实现mqtt协议,实现一个web页面向android...

  • 无标题文章

    Web 端上,我强烈推荐简书这款产品,上面有无数热爱文字的人在不停的创造、分享。在 Web 端使用 Markdow...

  • Ajax

    Ajax(asynchronous JavaScript and XML)是使用客户端上的许多Web技术,创建异步...

  • MQTT X 桌面客户端使用指南

    在介绍和使用前,读者可以访问 MQTT X 项目地址 或 MQTT X 官方网站,了解并获取到最新的版本信息,MQ...

  • 使用 WebSocket 客户端连接 MQTT 服务器

    使用 WebSocket 客户端连接 MQTT 服务器 [TOC] 简介 近年来随着 Web 前端的快速发展,浏览...

  • Android(安卓)连接MQTT Broker(服务器)

    准备工作 关于 MQTT 协议的基本介绍读者可以阅读EMQ的这篇文章。 在使用 MQTT 之前,需要搭建 MQTT...

  • MQTT协议简单实践

    #一、 实验目的 学习了解MQTT协议,并会简单的使用。 #二、实验内容 熟悉使用MQTT协议,并利用MQTT进行...

  • vconsole(移动端调试)

    web开发过程中,在移动端上使用的时候,我们没法子看到打印的console或者报错或者network请求,这个时候...

网友评论

      本文标题:在web前端上使用MQTT

      本文链接:https://www.haomeiwen.com/subject/mkdnqftx.html