Как сделать выборку запросов по API с приватным ip? - PullRequest
0 голосов
/ 09 января 2020

Я работаю над проектом с микросервисами, и у меня есть некоторые проблемы. У меня есть ReactJS интерфейс и ASP. NET API, и я работаю в среде docker / kubernetes. Я пытаюсь получить данные на моем фронте из API следующим образом:

    const https = require("https");
    const agent = new https.Agent({
        mode: "cors",
        method: 'GET',
        rejectUnauthorized: false
    })
    return fetch(hostApi1 +'/api/Weather/Index', { agent })

hostapi1 = https://10.0.96.227: 5001 У Frontend есть publi c ip, а api приватный ip.

Но консоль возвращает эту ошибку:

FetchWeather.tsx:130 GET https://10.0.96.227:5001/api/Weather/Index net::ERR_CONNECTION_TIMED_OUT

Но когда я пытаюсь это сделать из переднего контейнера:

curl -k https://10.0.96.227:5001/api/Weather/Index

Я получаю хороший ответ с моими данными.

Так есть ли какие-то особенности, которые нужно добавить в мой запрос на получение данных по API с частным IP? (когда я добавляю publi c ip для моего API, он работает, но это не цель)

Спасибо за любую помощь.

1 Ответ

4 голосов
/ 09 января 2020

Ваш ReactJS интерфейс работает в браузере пользователя. Поэтому вам нужно подключиться к бэкэнду, используя внешний IP. Вы не можете использовать частный кластер ip из-за пределов кластера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...