在Laravel表单中使用PUT和DELETE方法时出现MethodNotAllowedHttpException错误

3

我正在使用Laravel进行基本的CRUD操作。在使用PUT和DELETE方法时,表单操作中出现了MethodNotAllowedHttpException异常。而GET和POST方法可以正常工作。


3
你可以发一些代码来展示你在做什么吗? - user3272686
1
发一些代码,这样我们就可以帮助你了。 - Salman Zafar
1个回答

7
HTML表单只接受GETPOST方法,因此您不能在表单方法中使用PUTDELETE。但是,如果您想使用PUTDELETE,则Laravel提供了表单方法欺骗,如下所示:

<input type="hidden" name="_method" value="PUT">

这里是一个表单示例。

<form action="/foo/bar" method="POST">
    <input type="hidden" name="_method" value="PUT">
    <input type="hidden" name="_token" value="{{ csrf_token() }}">
</form>

简称

<form action="/foo/bar" method="POST">
    @method('PUT')
    @csrf
</form>

路由

Route::put('foo/bar', 'FooController@bar');

在这里查看详细信息:https://laravel.com/docs/5.6/routing#form-method-spoofing


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接