Что приводит к сбою моего API-запроса google calendar с ошибкой DNS при настройке с красного узла?
На ПК
- Я настроил узел-красный для запуска на ПК с Windows 10.
- Я использую вкладку "Управление палитрой" для установки гаджетов node-red-node-google.
- Я настроил учетную запись API Google для предоставления учетных данных API. Я только настроил один проект и попросил учетные данные для одного API.
- Я рисую нодно-красный поток для отправки событий календаря в окно отладки.
- Я настраиваю узел "google calendar out" с учетными данными, предоставленными google, и добавляю рекомендованный обратный вызов в узле red-node к списку API google "URI авторизованного перенаправления". Обратный вызов, рекомендованный узлом календаря, является локальным.
- Я настроил календарь Google и проверил, чтобы окно отладки получало подробную информацию о событиях запуска и остановки календаря, как и ожидалось.
НА ОДРОБЯН (ДЕБИАН)
- Затем я повторяю процесс, устанавливая node-red на odroid-c1 под управлением odrobian vanilla (Debian на основе консоли).
- Я иду через тот же процесс.
- Конфигурация календаря Google на этот раз предполагает обратный вызов node-red.example.com и рекомендует обновить /etc/hosts с отображением ip odroid на node-red.example.com.
- Обратный вызов node-red.example.com добавлен в обратный вызов api uri для учетной записи api. IP-адрес odroid отображается на node-red.example.com в /etc/hosts в соответствии с рекомендациями.
- Odroid перезагружается, запускается красный узел, делается попытка "Аутентифицироваться с помощью Google", и отображается страница "Запрос разрешения API".
- Выбрано "Разрешить", но "DNS-адрес сервера node-red.example.com не найден". отображается.
- С настройками брандмауэра экспериментировали, но ничто не позволяет завершить запрос на разрешение.
Таким образом, следуя тем же шагам, что и для ПК, на последнем шаге запускается разрешение API на Debian, работающем на odroid c1 на базе arm-v7.
URI обратного вызова генерируется узлом конфигурации node-red-node-google, поэтому не сразу видно, что его можно легко изменить. Конечно, установка обратного вызова для localhost, как и в версии для ПК, оказалась предпочтительным вариантом, но, если не только, если это было на самом деле легко настраивается.
Если не взломать программное обеспечение для изменения обратного вызова на localhost, есть ли способы исправить проблему отсутствия DNS-адреса?
1 ответ
Предполагая, что вы обновили /etc/hosts на odroid и вы получаете доступ к пользовательскому интерфейсу Node-RED с другого компьютера.
Добавление записи в файл /etc/hosts меняет только то, как компьютер-одроид будет разрешать DNS-адреса, а не то, как компьютер, к которому вы обращаетесь, пользовательский интерфейс Node-RED разрешает DNS-адреса. Это важно, потому что перенаправление OAuth будет обрабатываться машиной, обращающейся к пользовательскому интерфейсу, а не машиной одроида.
Чтобы это работало, вам нужно отредактировать файл hosts на вашем компьютере с Windows, а не на odroid.