laravel - получить параметры из http-запроса

0

Я хочу передать несколько параметров из моего приложения Angular в свой Laravel API, а именно массив id и choices предоставленный пользователем.

Угловой:

http-запрос:

    verifyAnswer: function(params) {
            return $http({
                method: 'GET',
                url: 'http://localhost:8888/api/questions/check',
                cache: true,
                params: {
                    id: params.question_id,
                    choices: params.answer_choices
                }
            });

Laravel 5:

routes.php:

$router->get('/api/questions/check/(:any)', 'ApiController@getAnswer');

ApiController.php:

public function getAnswer(Request $request) {
    die(print_r($request));
}

Я думал, что должен использовать :any в моем URI, чтобы указать, что я буду передавать произвольное количество параметров различной структуры данных (id - число, выбор - это выбор).

Как я могу сделать этот запрос?


[200]: /api/questions/check? Choice = выбор + 1 и выбор = выбор + 2 и выбор = выбор + 3 и id = 1

Теги:
http
laravel-5

1 ответ

2
Лучший ответ

Измените это:

$router->get('/api/questions/check/(:any)', 'ApiController@getAnswer');

в

$router->get('/api/questions/check', 'ApiController@getAnswer');

И выберите значения с помощью

echo $request->id;
echo $request->choices;

в вашем контроллере. Нет необходимости указывать, что вы получите параметры, все они будут в $request когда вы будете вводить Request в свой метод.

  • 1
    Спасибо за это!
  • 0
    Кстати, см выше редактировать. Он делает запрос с каждым параметром в массиве choices как своим собственным параметром URI. Есть ли способ просто пройти через массив и перебрать его в Laravel? То, что я хочу сделать, это получить вопрос по идентификатору, пройтись по выбору пользователя и проверить, совпадает ли выбор.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню