POST вызывает возврат 404 в Laravel - PullRequest
0 голосов
/ 09 сентября 2018

Я создаю регистрацию Api 1-й вызов - GET , а 2-й - POST вызов. Когда я выполняю вызов GET [POSTMAN], я получаю правильный ответ от контроллера, но когда я делаю POST, он возвращает 404.

web.php

// sign up api

Route::get('signup','Api\RegistrationController@createUser');
Route::post('/signup','Api\RegistrationController@storeUser');

RegistrationController.php

public function createUser(){
    return "Get : Sign up";
}

public function storeUser() {
    // validate the form
    $this->validate(request(),[
        'firstname' => 'required',
        'lastname' => 'required',
        'email' => 'required',
        'password' => 'required'
    ]);

    // create and save the user
    $user = Register::create(request(['firstname', 'lastename', 'email', 'password']));

    return "Registration complete";
}

Я использую Laravel 5.4. Когда URL-адрес маршрута остается тем же (то есть регистрация), тогда метод GET выполняется для вызова POST, когда URL-адрес маршрута отличается, он возвращает 404.

Снимок экрана: это вызов POST, но выполняется маршрут GET

Ответы [ 2 ]

0 голосов
/ 09 сентября 2018

Запишите все ваши маршруты API в файле api.php вместо web.php

use Illuminate\Http\Request;
public function storeUser(Request $request) {

// first check whether your request is coming here or not
// if not coming
// it is the issue of Routing   

dd('coming..');
//if it prints coming then comment this dd

$this->validate($request,[
 'firstname' => 'required',
 'lastname' => 'required',
 'email' => 'required',
 'password' => 'required'
]);

   $user = Register::create($request->all());
}
0 голосов
/ 09 сентября 2018

Попробуйте и дайте мне знать:

use Illuminate\Http\Request;

public function storeUser(Request $request) {
// validate the form

$this->validate($request,[
  'firstname' => 'required',
  'lastname' => 'required',
  'email' => 'required',
  'password' => 'required'
]);

 // create and save the user

  $user = Register::create($request->all());

  return "Registration complete";
}

Примечание: При разработке API всегда определяйте маршруты Api в файле api.php.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...