Django/React: Получение конечной точки API работает нормально из приложения, но возвращает 404, когда запрос приходит извне
Итак, я создал приложение React + Django и решил разделить его, чтобы бэкенд работал просто как rest API, а фронтенд отправлял к нему запросы. Целью было облегчить его размещение на хостинге.
Как отдельное приложение оно работает нормально. Запросы API возвращаются следующим образом [25/Oct/2022 14:31:21] ←[m"GET /spotify/current-song HTTP/1.1" 200 236←[0m
Но потом я отделил фронтенд, установил заголовки cors в django, чтобы принимать трафик от приложения react, и большая часть работает нормально.
Однако: вызов api для получения информации из API spotify получает ответ [25/Oct/2022 14:31:41] ←[33m"GET /spotify/current-song HTTP/1.1" 404 2←[0m Not Found: /spotify/current-song
, хотя это та же конечная точка, которая работала при вызове из приложения.
Вызов API из приложения react:
const getCurrentSong = async () => {
const song = await fetch(`${BASEURL}spotify/current-song`);
if (!song.ok || song.status == 204) {
return defaultSong;
}
const songJson = await song.json();
setSong(songJson);
document.body.style.backgroundImage = `url('${songJson.image_url}')`;
};
useEffect(() => {
const interval = setInterval(() => {
getCurrentSong();
}, 1000);
setAppBackground();
getRoomDetails();
return () => clearInterval(interval);
}, []);
Django project urls.py:
urlpatterns = [
# other, irrelevant
path('spotify/', include('spotify.urls')),
]
И django spotify app urls.py:
urlpatterns = [
path("current-song", CurrentSong.as_view()),
# other, irrelevant
]
Я проверил, и другие конечные точки spotify/
вызываются нормально. Здесь нет опечаток, так в чем же проблема?