rom*_*man 0 validation laravel laravel-5
当我在 Laravel 5.5 上使用表单请求验证时,这很奇怪,我所有的发布请求都将是 405 不允许的方法,但是当我使用标准验证时变得正常,这里我的代码是:
php工匠路线:列出值
+--------+----------+----------------------------------------+--------------------+-----------------------------------------------------------+------------+
| Domain | Method | URI | Name | Action | Middleware |
+--------+----------+----------------------------------------+--------------------+-----------------------------------------------------------+------------+
| | POST | api/register | | App\Http\Controllers\AuthController@register | api |
+--------+----------+----------------------------------------+--------------------+-----------------------------------------------------------+------------+
Run Code Online (Sandbox Code Playgroud)
请求使用失眠:

我失眠时的 base_api 值为http://mylocal.app/api
错误信息:
Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException
Run Code Online (Sandbox Code Playgroud)
路由器(api.php):
Route::post('register', 'AuthController@register');
Run Code Online (Sandbox Code Playgroud)
控制器(AuthController.php):
use App\Http\Requests\StoreRegistration;
public function register(StoreRegistration $request)
{
$email = $request->email;
$name = $request->name;
$password = $request->password;
$user = User::create([
'name' => $name,
'email' => $email,
'password' => Hash::make($password)
]);
$verifyUser = VerifyUser::create([
'user_uuid' => $user->uuid,
'token' => str_random(100)
]);
SendVerificationEmail::dispatch($user); //I use queue to send email
return response()->json(['success' => true, 'message' => 'message on success']);
}
Run Code Online (Sandbox Code Playgroud)
商店注册.php :
class StoreRegistration extends FormRequest {
public function authorize()
{
return true;
}
public function rules()
{
return [
'name' => 'required|min:4|max:50|unique:users|alpha_dash',
'email' => 'email|required|max:255|unique:users',
'password' => 'required|confirmed|min:6'
];
}
}
Run Code Online (Sandbox Code Playgroud)
这个问题让我抓狂。
当您从 insomnia 发送请求时,请确保添加标头;
接受:application/json和Content-Type: application/json
这样 Laravel 就知道它是一个 api 请求,并且将使用定义在api.php而不是web.php路由上的路由。
| 归档时间: |
|
| 查看次数: |
1581 次 |
| 最近记录: |