2016-02-11 15 views
12

Tôi đã theo dõi các tài liệu AWS IoT đang cố gắng bắt đầu với hướng dẫn MQTT tại http://docs.aws.amazon.com/iot/latest/developerguide/protocols.html#mqtt-ws để thiết lập kết nối WebSocket với AWS IoT trong ứng dụng web. Bước đầu tiên là để bắt đầu một kết nối WebSocket bằng cách làm cho một yêu cầu GET đến một thiết bị đầu cuối được tạo ra bằng cách làm theo các bước trong hướng dẫn nhưng tôi nhận được lỗi này:AWS IoT MQTT qua Giao thức WebSocket

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

tôi đã tự hỏi nếu có ai đã gặp phải điều này và nếu có, cách họ giải quyết nó?

Đây là liên kết tới mã https://github.com/dwyl/learn-aws-iot/blob/2c8035728ec8228e296580c8714f3f7ace870fbe/src/js/components/App.js

+0

là yêu cầu GET thất bại trong việc mô tả API-thiết bị đầu cuối hoặc để mở WebSocket? Nếu cố gắng mở WebSocket, bạn có đang sử dụng một trình khách Javascript có hỗ trợ WebSockets hoặc thực hiện một yêu cầu HTTP bình thường đến điểm cuối không? –

+0

Tôi đang thực hiện một yêu cầu HTTP bình thường thông qua XMLHttpRequest để mở websocket bằng cách sử dụng một url của biểu mẫu '' 'wss: // .iot. .amazonaws.com/mqtt''' đã được ký bằng phiên bản chữ ký amazon 4 –

Trả lời

5

Đây là ví dụ về cách tôi mở kênh. Tôi đang sử dụng vai trò unauth Cognito làm người đăng ký. Tôi cũng đang sử dụng máy khách JS Paho.

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

+4

Cảm ơn! Bạn có thể chia sẻ chức năng 'SigV4Utils.getSignedUrl' của bạn không? –

+2

Vâng, nó sẽ là tuyệt vời nếu bạn có thể chia sẻ chức năng này utils. Dường như không tìm thấy nó ở bất kỳ đâu trong tài liệu –

+0

Xem [tại đây] (http://draw.kyleroche.com/sigv4utils.js) để biết chức năng tiện ích đang được sử dụng. –

Các vấn đề liên quan