Передайте переменные в URL-пути для получения запроса GET

#javascript #url #path #get #fetch

Вопрос:

У меня есть этот запрос на выборку ниже, а также переменные data_type и data_subtype. Я хочу передать значение data_type и data_subtype вместо :type и :subtype соответственно, фактически не записывая значения переменных там.

 fetch('http://localhost:3000/feature/type/:type/subtype/:subtype,{
    method: 'GET',
  headers: {
    'Content-Type': 'application/json'
  }
}).then(response => response.text())
.then(data => {
        console.log(data);
})
.catch(err => {
          console.log(err);
});
 

Комментарии:

1. Итак, вы спрашиваете нас, как объединить строки вместе в JS?

2. Спасибо @blex! Я понял вашу точку зрения, простое объединение сработало!

Ответ №1:

Вы можете заменить значения переменных в URL-адресе. например.

 const data_type = 'data Type' 
const data_subtype = 'data subtype
fetch(`http://localhost:3000/feature/type/${data_type}/subtype/${data_subtype}`,{
    method: 'GET',
  headers: {
    'Content-Type': 'application/json'
  }
}).then(response => response.text())
.then(data => {
        console.log(data);
})
.catch(err => {
          console.log(err);
});
 

Комментарии:

1. Спасибо за вашу помощь @junkie, этот метод также сработал.

Ответ №2:

как расширение ответа @junkie, вы должны поместить свой URL-запрос в строковый литерал, чтобы вы могли использовать переменные, которые будут условно заменять значения, фактически не записывая значения, поэтому просто определите и замените их.