Я использую axios для получения ответа одного из API http://xxxxxxxxxxxxxxxxxx.com/actuator/health, Я успешно могу извлечь его значение из моего кода на стороне клиента React, но когда я устанавливаю экспресс-конечную точку для этого на стороне сервера и вызываю ниже конечной точки из браузера
`` `
app.get('/health', function (req, res) {
var url = serviceUrl + '/actuator/health';
axios.get(url)
.then((response) => {
const data = response.data;
console.log(data);
res.json(data);
})
.catch((err) => {
console.log(err);
})
});
`` `
тогда я получаю ошибку ниже
Ошибка:
Запрос не выполнен с кодом состояния 503
statusText: 'DNS Fail',
хост: 'proxy-gcp-central.xxxx.com',
responseUrl: 'http://proxy -gcp-central.xxxx.com / http://xxxxxxxxxxxxxxxxxx.com/actuator/health'
_currentUrl: 'http://proxy -gcp-central.xxxx.com / http://xxxxxxxxxxxxxxxxxx.com/actuator/health'
Где http://proxy -gcp-central.xxxx.com / добавляется перед фактическим url =>, следовательно, происходит сбой
Я получаю эту проблему в облачной среде, я могу решить эту проблему на своем локальном компьютере, предоставив прокси-информацию вместе с URL-адресом в функции axios.get выше (как на локальном, я использую прокси-сервер для доступа к этому URL), но в облаке мы можем получить к нему прямой доступ без использования прокси-сервера, поэтому для облака мы не можем установить эту информацию прокси в этом коде.
Я пробовал это со многими другими модулями узла, такими как http, request, request-обещание, но все же я получаю ту же проблему.
Я также пытался установить Access-Control-Allow-Origin, Access-Control-Allow-Methods, Access-Control-Allow-Headers
в заголовках и в app.use, но ни один из них не решил мою проблему.
контекст
- axios версия: например: v0.17.1
- Среда: например: узел v8.11.3, npm v6.2.0, chrome 68.0.3440.106 (официальная сборка) (64-разрядная версия), windows 7