[英]what does the following error on websocket mean and how to fix it
我試圖通過Web套接字通過lambda函數將ALEXA技能套件連接到ROS(在ubutnu VM機器上運行)。 問題是未建立Web套接字連接。 我收到以下錯誤消息:
Error connecting to websocket server: { Error: connect ETIMEDOUT 192.168.0.20:9090
at Object.exports._errnoException (util.js:1018:11)
at exports._exceptionWithHostPort (util.js:1041:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1086:14)
code: 'ETIMEDOUT',
errno: 'ETIMEDOUT',
syscall: 'connect',
address: '192.168.0.20',
port: 9090,
type: 'error',
target:
WebSocket {
domain: null,
_events:
{ open: [Object],
close: [Object],
error: [Object],
message: [Object] },
_eventsCount: 4,
_maxListeners: undefined,
_socket: null,
_ultron: null,
_closeReceived: false,
bytesReceived: 0,
readyState: 0,
supports: { binary: true },
extensions: {},
_isServer: false,
url: 'ws://192.168.0.20:9090',
protocolVersion: 13 } }
WebSocket URL“ 192.168.0.20”是本地地址。 如果您使用的是AWS Lambda,則您的lambda函數無法連接到“ 192.168.0.20”。 因為它們不在同一網絡上
如果您的Alexa套件和WebSocket位於同一網絡上,由於VM,它們將不在完全相同的網絡上。 虛擬機創建自己的網絡
@hasbi對於為什么會出現此錯誤有正確的答案。
解決方法是,考慮使用隧道服務,例如ngrok(免費)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.