Как передать массив в строке запроса?

Есть ли стандартный способ передачи массива через строку запроса?

Для ясности, у меня есть строка запроса с несколькими значениями, одно из которых может быть значением массива. Я хочу, чтобы это значение строки запроса обрабатывалось как массив - я не хочу, чтобы массив был взорван, чтобы его нельзя было отличить от других переменных строки запроса.

Кроме того, согласно этому ответу на сообщение ], автор предполагает, что поддержка строк запроса для массивов не определена. Это точно?

РЕДАКТИРОВАТЬ:

Основываясь на ответе @ Alex, стандартного способа сделать это не существует, поэтому я продолжаю следить за тем, что является простым способом распознать , что параметр, который я читаю, массив в PHP и Javascript ?

Можно ли назвать несколько параметров одним и тем же именем, чтобы я знал, что они принадлежат массиву? Пример:

?myarray=value1&myarray=value2&myarray=value3...

Или это будет плохой практикой?

323
задан Community 23 May 2017 в 02:26
поделиться

1 ответ

Я использую, Реагируют и направляющие. Я сделал:

js

  let params = {
    filter_array: ['A', 'B', 'C']
  }

  ...

  //transform params in URI

  Object.keys(params).map(key => {
    if (Array.isArray(params[key])) {
      return params[key].map((value) => `${key}[]=${value}`).join('&')
    }
  }
  //filter_array[]=A&filter_array[]=B&filter_array[]=C
1
ответ дан 23 November 2019 в 00:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: