Я использую два отдельных приложения (внешний интерфейс приложения-приложения и серверный узел / express) в Heroku. Я пытаюсь сделать запрос с info-screen.herokuapp.com на один информационный экран.
Это обработчик GET-запроса:
app.get('/info', (req, res) => {
Info.find()
.then( info => {
res.status(200).json(info)
})
.catch( err => {
res.status(404).json({
message: err
});
});
});
И здесь вы можете увидеть внешнюю сторону, которая на самом деле отправляет запросы:
axios.get(API_URI + '/info')
.then( (resp) => {
console.log(resp);
})
.catch( (err) => {
console.log(err);
})
Вот конфиг var для переменной env API_URI:
Я искал исправление для этого около двух часов.
Когда бы я ни отправлял запрос, по какой-то причине интерфейс пытается префиксировать переменную API_URI своим собственным URI, что приводит к этому (посмотрите URL запроса):
Кто-нибудь здесь, возможно, имел какой-либо опыт с этим? Я попытался погуглить и подумал, что, может быть, create-реагировать-приложение использует BaseUrl или что-то, но, видимо, это не так.
Когда я отправляю запрос в API напрямую, он возвращает это нормально:
[
{
"created_by": "Innkaupadeild",
"show": false,
"_id": "5e67b5b4070f000004a62c79",
"title": "New shipment on hold",
"details": "New shipment on testing 2",
"created_date": "2020-03-10T15:43:48.710Z",
"modified_date": "2020-03-10T15:43:48.710Z",
"__v": 0
}
]
Это означает, что это определенно на сайте интерфейса.
Возможно, мне не хватает чего-то в моем пакете. json или мне нужен другой файл, чтобы разрешить герою делать внешние запросы?
Пакет сборки, который я использую на веб-интерфейсе, "Mars Create-React-Buildpack"