Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 如何建立到AWS设备场远程会话终结点的连接_Amazon Web Services_Websocket_Aws Device Farm - Fatal编程技术网

Amazon web services 如何建立到AWS设备场远程会话终结点的连接

Amazon web services 如何建立到AWS设备场远程会话终结点的连接,amazon-web-services,websocket,aws-device-farm,Amazon Web Services,Websocket,Aws Device Farm,我尝试创建AWS设备场远程会话,我能够成功地做到这一点。创建的远程会话的响应JSON具有端点(wss)和主机地址(IP)。而不是登录到AWS设备场与设备交互。我想直接在我自己的网页上提供远程访问(我不确定这是否可能)。希望它可以在画布标记下呈现 虽然我没有套接字方面的经验,但我只是尝试了一些示例代码来连接收到的Web套接字URL var wsUri = "wss://devicefarm-interactive.us-west-2.amazonaws.com/?X-Amz-Date=*&

我尝试创建AWS设备场远程会话,我能够成功地做到这一点。创建的远程会话的响应JSON具有端点(wss)和主机地址(IP)。而不是登录到AWS设备场与设备交互。我想直接在我自己的网页上提供远程访问(我不确定这是否可能)。希望它可以在画布标记下呈现

虽然我没有套接字方面的经验,但我只是尝试了一些示例代码来连接收到的Web套接字URL

var wsUri = "wss://devicefarm-interactive.us-west-2.amazonaws.com/?X-Amz-Date=*&X-Amz-Credential=*&X-Amz-Algorithm=*&X-Amz-SignedHeaders=host&X-Amz-Signature=*&X-Amz-Security-Token=*";
var websocket = new WebSocket(wsUri);
websocket.send('ping');
下面是控制台上的错误。 连接在收到握手响应之前关闭


任何要实现的示例链接都会有帮助

我能够重现该错误。在chrome中检查页面后(因为它内置了一个web套接字调试器),我寻找了使用networking选项卡使用web套接字连接的示例,该示例将显示以下内容:

基本上,它的工作原理是不断地向我们发送图像流

当我复制为cURL命令时,这就是结果

curl'wss://devicefarm-interactive.us-west-2.amazonaws.com/?X-Amz日期=20190518T211708Z&X-Amz-Credential=ASIAIGY76PSQXN5NZ3UA%2Fus-west-2%2Faws4\u请求和X-Amz-Algorithm=AWS4-HMAC-SHA256&arn=arn%3AWS%3AAWS2%3Aus-west-2%111122223333%3Session%3F48F4AF46D-8f86-4dcc-8324-E691CE33F3%6B4DC6332-188f-459-be32-2FE8800000&X-Amz-SignedHeaders=host&X-Amz-Signature=39b45e1489d44dfcb904d58e59e985844416061a828aa75750d5a67db36c55dd&X-Amz-Security-Token=someTokenValue&path=video'-H'杂注:无缓存'-H'来源:https://us-west-2.console.aws.amazon.com'-H'接受编码:gzip,deflate,br'-H'接受语言:en-US,en;q=0.9'-H'秒WebSocket键:60RGfCwWuULib6NmeoC2fA='-H'用户代理:Mozilla/5.0(Macintosh;英特尔Mac OS X 10_13_6)AppleWebKit/537.36(KHTML,类似Gecko)Chrome/74.0.3729.157 Safari/537.36'-H'升级:WebSocket'-H'秒WebSocket扩展:permessage deflate;客户端\u最大\u窗口\u位'-H'缓存控制:无缓存'-H'连接:升级'-H'秒WebSocket版本:13'-压缩

执行以下CLI命令时,我恢复了端点:

aws devicefarm获取远程访问会话--arn-arn:aws:devicefarm:us-west-2:111122223333:session:8f4af46d-8f86-4dcc-8324-E691CE373F3/6b4dc632-188f-45b9-be32-3e9aa6881ed3/00000地区us-west-2--查询远程访问会话端点

"wss://devicefarm-interactive.us-west-2.amazonaws.com/?X-Amz-Date=20190518T212323Z&X-Amz-Credential=ASIAIU5CA7GBP5IEBR6Q%2F20190518%2Fus-west-2%2Fdevicefarm%2Faws4_request&X-Amz-Algorithm=AWS4-HMAC-SHA256&arn=arn%3Aaws%3Adevicefarm%3Aus-west-2%3A111122223333%3Asession%3A8f4af46d-8f86-4dcc-8324-e691ce3723f3%2F6b4dc632-188f-45b9-be32-3e9aa6881ed3%2F00000&X-Amz-SignedHeaders=host&X-Amz-Signature=aaaaqaqbbbb4e9f09b7312715c295a11b77bc0d9e7b21dcb61422a61f78a1f&X-Amz-Security-Token=FQoGZXIvYXdzEFcaDD2E90%2Bsp3i%2F%2F8cBbyKDA2EGKkFYSvXDR%2Fb7LfS%2FpQEPCWFVhe9eCOTSussvshjldx69CEFvVgV3JYtOvm2yu0UMVAxlDYlujvpMfSNwLx7FH%2B42k9qGYuvy5dQbVLg%2F%2BCRuyK9OjCxpD5pUfQ9b81U6LawcI2I1CekXeTgapRuTK9tCPcGtNOlxAvWQUVlyDGTtmqjz7vRlostquMoenNr9UB1v8jx0NSo1YIlrgY8YvZV2o5pcbYiI9I9CBD0%2F3snJZAyQtmPZkMT9gr9hI0jgX1X5MlOuarFmm%2F2Sn%2FH8L3ewMQXhvuho3OTNZTISBmUgJAbZSmQcazuDmjXqPkoNpYYcUb92vd2w5MbRfFSa5SHHXUMVcE5Wsop3BzwJyj%2FNyl59BdjFWdo82NgSFP6OBjYLjiux3hR2dx86ILJ9tfNMNfq0WXzL3Z%2BqecwMTxlxrLfZmPftsUDaO5RPtOP9uuI%2BPjfIOWOV7uFy9GjKG4HKFY%2BZVGgWhb1fVVG7%2BYHbPxgMaAKI3YJqmM9IIy8%2FdCjL74HnBQ%3D%3D%7CMjA1LjI1MS4yMzMuMTc5"
似乎已经签字了。使用wscat,我尝试连接到它

endpoint=$(aws devicefarm get-remote-access-session --arn arn:aws:devicefarm:us-west-2:111122223333:session:8f4af46d-8f86-4dcc-8324-e691ce3723f3/6b4dc632-188f-45b9-be32-3e9aa6881ed3/00000 --region us-west-2 --query remoteAccessSession.endpoint)

wscat -c $endpoint
错误
/usr/local/lib/node_modules/wscat/node_modules/ws/lib/websocket.js:455
抛出新错误(
无效URL:${this.URL}


稍后我需要花更多的时间在这方面,但我认为其中的一些内容很有帮助,所以我发布了它

我能够重现那个错误。在chrome中检查页面后(因为它内置了一个web套接字调试器),我寻找了使用networking选项卡使用web套接字连接的示例,该示例将显示以下内容:

基本上,它的工作原理是不断地向我们发送图像流

当我复制为cURL命令时,这就是结果

curl'wss://devicefarm-interactive.us-west-2.amazonaws.com/?X-Amz日期=20190518T211708Z&X-Amz-Credential=ASIAIGY76PSQXN5NZ3UA%2Fus-west-2%2Faws4\u请求和X-Amz-Algorithm=AWS4-HMAC-SHA256&arn=arn%3AWS%3AAWS2%3Aus-west-2%111122223333%3Session%3F48F4AF46D-8f86-4dcc-8324-E691CE33F3%6B4DC6332-188f-459-be32-2FE8800000&X-Amz-SignedHeaders=host&X-Amz-Signature=39b45e1489d44dfcb904d58e59e985844416061a828aa75750d5a67db36c55dd&X-Amz-Security-Token=someTokenValue&path=video'-H'杂注:无缓存'-H'来源:https://us-west-2.console.aws.amazon.com'-H'接受编码:gzip,deflate,br'-H'接受语言:en-US,en;q=0.9'-H'秒WebSocket键:60RGfCwWuULib6NmeoC2fA='-H'用户代理:Mozilla/5.0(Macintosh;英特尔Mac OS X 10_13_6)AppleWebKit/537.36(KHTML,类似Gecko)Chrome/74.0.3729.157 Safari/537.36'-H'升级:WebSocket'-H'秒WebSocket扩展:permessage deflate;客户端\u最大\u窗口\u位'-H'缓存控制:无缓存'-H'连接:升级'-H'秒WebSocket版本:13'-压缩

执行以下CLI命令时,我恢复了端点:

aws devicefarm获取远程访问会话--arn-arn:aws:devicefarm:us-west-2:111122223333:session:8f4af46d-8f86-4dcc-8324-E691CE373F3/6b4dc632-188f-45b9-be32-3e9aa6881ed3/00000地区us-west-2--查询远程访问会话端点

"wss://devicefarm-interactive.us-west-2.amazonaws.com/?X-Amz-Date=20190518T212323Z&X-Amz-Credential=ASIAIU5CA7GBP5IEBR6Q%2F20190518%2Fus-west-2%2Fdevicefarm%2Faws4_request&X-Amz-Algorithm=AWS4-HMAC-SHA256&arn=arn%3Aaws%3Adevicefarm%3Aus-west-2%3A111122223333%3Asession%3A8f4af46d-8f86-4dcc-8324-e691ce3723f3%2F6b4dc632-188f-45b9-be32-3e9aa6881ed3%2F00000&X-Amz-SignedHeaders=host&X-Amz-Signature=aaaaqaqbbbb4e9f09b7312715c295a11b77bc0d9e7b21dcb61422a61f78a1f&X-Amz-Security-Token=FQoGZXIvYXdzEFcaDD2E90%2Bsp3i%2F%2F8cBbyKDA2EGKkFYSvXDR%2Fb7LfS%2FpQEPCWFVhe9eCOTSussvshjldx69CEFvVgV3JYtOvm2yu0UMVAxlDYlujvpMfSNwLx7FH%2B42k9qGYuvy5dQbVLg%2F%2BCRuyK9OjCxpD5pUfQ9b81U6LawcI2I1CekXeTgapRuTK9tCPcGtNOlxAvWQUVlyDGTtmqjz7vRlostquMoenNr9UB1v8jx0NSo1YIlrgY8YvZV2o5pcbYiI9I9CBD0%2F3snJZAyQtmPZkMT9gr9hI0jgX1X5MlOuarFmm%2F2Sn%2FH8L3ewMQXhvuho3OTNZTISBmUgJAbZSmQcazuDmjXqPkoNpYYcUb92vd2w5MbRfFSa5SHHXUMVcE5Wsop3BzwJyj%2FNyl59BdjFWdo82NgSFP6OBjYLjiux3hR2dx86ILJ9tfNMNfq0WXzL3Z%2BqecwMTxlxrLfZmPftsUDaO5RPtOP9uuI%2BPjfIOWOV7uFy9GjKG4HKFY%2BZVGgWhb1fVVG7%2BYHbPxgMaAKI3YJqmM9IIy8%2FdCjL74HnBQ%3D%3D%7CMjA1LjI1MS4yMzMuMTc5"
似乎已经签字了。使用wscat,我尝试连接到它

endpoint=$(aws devicefarm get-remote-access-session --arn arn:aws:devicefarm:us-west-2:111122223333:session:8f4af46d-8f86-4dcc-8324-e691ce3723f3/6b4dc632-188f-45b9-be32-3e9aa6881ed3/00000 --region us-west-2 --query remoteAccessSession.endpoint)

wscat -c $endpoint
错误
/usr/local/lib/node_modules/wscat/node_modules/ws/lib/websocket.js:455
抛出新错误(
无效URL:${this.URL}

稍后我需要花更多的时间在这方面,但我认为其中的一些内容很有帮助,所以我发布了它