1 Востаннє редагувалося Yola (07.09.2020 20:22:11)

Тема: Де в react-застосунку зберігати базову адресу?

Маю проблему з подібними виразами - каже, що неправильний url.

new URL("./api/count");

Коли таке напряму передавав у fetch, то працювало. Постає питання - як і де зберігати базову адресу мого rest-сервера?

2

Re: Де в react-застосунку зберігати базову адресу?

Не будь-яка адреса - URL

3

Re: Де в react-застосунку зберігати базову адресу?

Це не ваша проблема?

4

Re: Де в react-застосунку зберігати базову адресу?

Додав файл `.env` з таким вмістом:

REACT_APP_API=https://localhost:3000/api

Використовую так:

let url = new URL(`${process.env.REACT_APP_API}/count`);

Тобто я не розумів як мені не розкидувати по коду базову адресу, а так вона в мене в одному місці.

5

Re: Де в react-застосунку зберігати базову адресу?

Так, стоп, URL - це ж не react, це стандартний клас. Тобто

new URL("./api/count", window.location.href)
Подякували: FakiNyan, ostap34PHP, leofun01, Yola4

6

Re: Де в react-застосунку зберігати базову адресу?

koala написав:

Так, стоп, URL - це ж не react, це стандартний клас. Тобто

new URL("./api/count", window.location.href)

Хороша річ, але у мене react-застосунок і я не знаю адреси рестовика наперед. Майже напевно від буде на тому ж домені, але повний шлях до нього не відомий. Це може domain.com/api чи domain.com/rest-api. Використовуючи змінну оточення мені вдалось розв'язати і цю проблему також.