基于 WebSocket 协议的 AWS IoT MQTT

     2023-03-08     151

关键词:

【中文标题】基于 WebSocket 协议的 AWS IoT MQTT【英文标题】:AWS IoT MQTT over WebSocket Protocol 【发布时间】:2016-05-22 14:12:41 【问题描述】:

我一直在关注 AWS IoT 文档,尝试开始使用 MQTT 教程,网址为 http://docs.aws.amazon.com/iot/latest/developerguide/protocols.html#mqtt-ws 在 Web 应用程序中设置与 AWS IoT 的 WebSocket 连接。第一步是通过向按照教程中的步骤创建的端点发出 GET 请求来启动 WebSocket 连接,但我收到此错误:

XMLHttpRequest cannot load <my endpoint> Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.

我想知道是否有人遇到过这个错误,如果有,他们是如何解决的?

这是代码https://github.com/dwyl/learn-aws-iot/blob/2c8035728ec8228e296580c8714f3f7ace870fbe/src/js/components/App.js的链接

【问题讨论】:

失败的 GET 请求是对 describe-endpoint API 还是打开 WebSocket?如果尝试打开 WebSocket,您是使用支持 WebSockets 的 Javascript 客户端还是向端点发出正常的 HTTP 请求? 我正在通过 XMLHttpRequest 发出一个普通的 HTTP 请求,以使用格式为 wss://<endpoint>.iot.<region>.amazonaws.com/mqtt 的 URL 打开 Websocket,该 URL 已使用亚马逊签名版本 4 进行了签名 【参考方案1】:

这是我如何打开频道的示例。我正在使用 Cognito unauth 角色作为订阅者。我也在使用 JS Paho 客户端。

http://draw.kyleroche.com/main.js

【讨论】:

谢谢!你能分享你的SigV4Utils.getSignedUrl函数吗? 是的,如果你能分享这个 utils 函数那就太好了。似乎在文档中的任何地方都找不到它 查看here了解正在使用的实用功能。 更多信息在docs。【参考方案2】:

AWS 实验室还在此处发布了一个 MQTT over WebSockets 参考示例:https://github.com/awslabs/aws-iot-examples

【讨论】:

AWS - 使用 @connections websocket 回调 url 从后端发送响应(单向) - API Gateway websocket 协议

】AWS-使用@connectionswebsocket回调url从后端发送响应(单向)-APIGatewaywebsocket协议【英文标题】:AWS-Using@connectionswebsocketcallbackurltosendresponsefromback-end(one-way)-APIGatewaywebsocketprotocol【发布时间】:2019-10-2513:20:05【问题描述】:我一直在... 查看详情

浅析websocket劫持

WebSocket是HTML5推出的新协议,是基于TCP的应用层通信协议,它与http协议内容本身没有关系。WebSocket也类似于TCP一样进行握手连接,跟TCP不同的是,WebSocket是基于HTTP协议进行的握手,它在客户端和服务器之间提供了一个基于单TCP... 查看详情

基于websocket协议的研究demo

1、日志推送 websocket在线测试WebSocket在线测试工具物联网http://www.websocket-test.com/2、Springboot+vue的聊天:Springboot+websocket+vue的web聊天项目https://gitee.com/xzlmk/spring_boot_vue_chat 3、实时通信  4、基于C#net4.5实现最 查看详情

websocket 是基于流还是基于包的协议?

】websocket是基于流还是基于包的协议?【英文标题】:Iswebsocketastream-basedorpackage-basedprotocol?【发布时间】:2014-01-2805:41:30【问题描述】:想象一下,我有服务器和客户端通过WebSocket进行通信。每次发送另一块数据。不同的块可能... 查看详情

基于websocket协议的研究demo

1、日志推送 websocket在线测试WebSocket在线测试工具物联网http://www.websocket-test.com/2、Springboot+vue的聊天:Springboot+websocket+vue的web聊天项目https://gitee.com/xzlmk/spring_boot_vue_chat 3、实时通信  4、基于C#net4.5实现最简单的websocket... 查看详情

使用 AWS 和 Elastic Beanstalk 的 Websocket

】使用AWS和ElasticBeanstalk的Websocket【英文标题】:WebsocketswithAWSandElasticBeanstalk【发布时间】:2015-02-1017:16:09【问题描述】:我正在尝试让我的websocket与AmazonWebService和ElasticBeanstalk(ELB)一起使用。我根据以下设置代理协议:http://docs.a... 查看详情

如何在 AWS Elastic Beanstalk 服务器上使用 nginx 启用 WebSocket?

】如何在AWSElasticBeanstalk服务器上使用nginx启用WebSocket?【英文标题】:howtoenableWebSocketwithnginxonAWSElasticBeanstalkserver?【发布时间】:2013-11-1902:17:22【问题描述】:我在awsbeanstalk服务器上部署了一个nodejs应用程序,并希望使用基于Web... 查看详情

websocket(基于tcp的全双工通信协议)

参考技术AWebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSockets它可以在用户的浏览器和服务器之间打开交互式通信会话。使用此API,可以向服务器发送消息并接收事件驱动的响应,而无需通过轮询服务器的方式以获得... 查看详情

Apache CXF 中基于 WebSocket 的 SOAP?

】ApacheCXF中基于WebSocket的SOAP?【英文标题】:SOAPoverWebSocketsinApacheCXF?【发布时间】:2014-04-0907:04:13【问题描述】:CXF是否支持将WebSockets作为传输协议?我需要支持多路复用的SOAP和WebSocket协议作为起点看起来很完美。它是一种双... 查看详情

有了http协议,为什么还需要websocket?

WebSocket是一种基于TCP连接上进行全双工通信的协议,相对于HTTP这种非持久的协议来说,WebSocket是一个持久化网络通信的协议。WebSocket是一种基于TCP连接上进行全双工通信的协议,相对于HTTP这种非持久的协议来说,... 查看详情

电信运营商基于mqtt协议构建千万级iot设备管理平台

MQTT是用于物联网的标准消息传递协议。它被设计为一种非常轻量级的发布/订阅消息传送,非常适合以较小的代码占用量和网络带宽连接远程设备。MQTT协议具有以下特点:轻巧高效:MQTT客户端非常小,需要设备资... 查看详情

http和websocket协议

websocket是一个新的基于TCP的应用层协议,只需要一次连接,以后的数据不需要重新建立连接,可以直接发送,它是基于TCP的,属于和HTTP相同的地位,通过消息的方式触发。HTTPHTTP的地址格式如下:http_URL="http:""//"host[":"port][abs_path["... 查看详情

iot之mqtt协议(代码片段)

1、MQTT是啥MQTT协议 是基于发布/订阅模式的物联网通信协议,凭借简单易实现、支持QoS、报文小等特点,占据了物联网协议的半壁江山。Mqtt协议是建立在TCP连接之上的应用层协议,是为了解决复杂网络环境下的通信... 查看详情

websocket协议学习笔记(代码片段)

一、WebSocket协议简介WebSocket是应用层协议。用于C/S架构应用中实现双向通信。虽然WebSocket协议在建立连接时会使用HTTP协议,但这并不意味着WebSocket协议是基于HTTP协议实现的。二、WebSocket协议与HTTP协议的区别1、通信方式不同... 查看详情

wireshark文档阅读笔记-websocket协议基本概念(代码片段)

WebSocketWebSocket是基于TCP的全双工协议。WebSocket是2011年IETFRFC6455中定义的标准,他的API是W3C定义的。WebSocket不仅适用于浏览器、服务端的程序,还适用于客户端、服务端的程序。WebSocket是基于TCP的协议。WebSocket让服务器和... 查看详情

websocket的简单实现

参考技术AWebSocket协议是基于TCP的一种新的网络协议。浏览器通信通常是基于HTTP协议,为什么还需要另一个协议?因为http只能由客户端发起,不能由服务端发起。而WebSocket浏览器和服务器只需要完成一次握手,两者之间就直接可... 查看详情

如何将多个设备连接到 AWS-IOT 中的同一事物?

】如何将多个设备连接到AWS-IOT中的同一事物?【英文标题】:HowtoconnectmultipledevicestosameThinginAWS-IOT?【发布时间】:2016-10-0107:01:42【问题描述】:我正在开展一个项目,在一个区域安装100多个温度传感器节点,所有这些节点都执... 查看详情

websocket入门(代码片段)

Websocket入门前言基础1.什么是webSocket2.websocket与其他协议的区别3.使用websocket简单代码实现前言基础TCP/IP五层模型与OSI七层模型的协议更多计网相关的知识可以看这篇文章【计算机网络-五层和七层模型】1.什么是webSocketWebSocket协议... 查看详情