2016-02-11 2 views
12

Я следовал документацию AWS ВГД, пытаясь начать с учебником MQTT в http://docs.aws.amazon.com/iot/latest/developerguide/protocols.html#mqtt-ws , чтобы установить соединение WebSocket для AWS IoT в веб-приложении. Первый шаг, чтобы инициировать соединение WebSocket, делая запрос GET к конечной точке, созданной, следуя инструкциям в руководстве, но я получаю эту ошибку:AWS IoT MQTT над 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

+0

ли запрос неисправной GET на описания конечных точек API или открыть WebSocket? Если вы пытаетесь открыть WebSocket, используете ли вы клиент Javascript, который поддерживает WebSockets или делает обычный HTTP-запрос конечной точке? –

+0

Я делаю обычный HTTP-запрос через XMLHttpRequest, чтобы открыть websocket, используя URL-адрес формы '' 'wss: // .iot. .amazonaws.com/mqtt''', который был подписан с использованием версии подписки амазонки 4 –

ответ

5

Вот пример того, как я открываю канал. Я использую роли Cognito unauth в качестве подписчика. Я также использую клиента JS Paho.

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

+4

Спасибо! Можете ли вы поделиться своей функцией SigV4Utils.getSignedUrl? –

+2

Да, было бы здорово, если бы вы могли поделиться этой функцией utils. Кажется, он не находит его в документах. –

+0

См. [Здесь] (http://draw.kyleroche.com/sigv4utils.js) для используемой функции утилиты. –