На самом деле для отправки формы методом
GET не обязательно наличие формы. Мы можем
просто взять и вручную вбить в адресную строку
GET параметры и нажать на Enter
. Тем
самым мы имитируем отправку формы.
Этим приемом часто пользуются при разработке сайтов. Конечно, не вбивают вручную в адресную строку (хотя это технически возможно для продвинутых пользователей), а создают ссылки, при переходе по которым будет имитироваться отправка формы.
Давайте сделаем подобную ссылку:
<a href="/handler/?test1=1&test2=2">link</a>
Поймаем данные из ссылки на сервере:
export default {
'/handler/': function({get}) {
console.log(get);
return 'text';
}
}
Применение
Пусть на сервере есть некоторый объект:
let obj = {1: 'a', 2: 'b', 3: 'c'};
export default function({get}) {
}
Давайте сделаем три ссылки, отправляющие GET параметры на сервер:
<a href="/handler/?key=1">1</a>
<a href="/handler/?key=2">2</a>
<a href="/handler/?key=3">3</a>
Теперь подправим код сервера так, чтобы переход по ссылке показывал соответствующий элемент объекта:
export default {
'/handler/': function({get}) {
let obj = {1: 'a', 2: 'b', 3: 'c'};
return obj[get.key];
}
}
Пусть на сервере есть массив с юзерами:
let arr = [
'user1', 'user2', 'user3'
];
Сделайте ссылки, показывающие в браузере соответствующих юзеров.
Модифицируйте предыдущую задачу так, чтобы при отсутствии в массиве элемента с переданным ключом, в браузер отправлялась ошибка.