此路由不支持 POST 方法。支持的方法:GET、HEAD。但我只能使用 post 方法
Posted
技术标签:
【中文标题】此路由不支持 POST 方法。支持的方法:GET、HEAD。但我只能使用 post 方法【英文标题】:The POST method is not supported for this route. Supported methods: GET, HEAD., but i have to use post method only 【发布时间】:2021-08-31 23:46:46 【问题描述】:这是我在刀片文件中使用的代码:
<form action="addTo_cart" method="post">
这是我在web.php中使用的路由
Route::post("/addTo_cart",[ProductController::class, 'addToCart']);
我得到了错误,
此路由不支持 POST 方法。支持的方法:GET、HEAD。
【问题讨论】:
您能否提供更多详细信息,例如刀片模板等发布到此路线的位置... 添加产生错误的具体代码。 【参考方案1】:像这样初始化你的路线
Route::match(['get',post] , 'View-name' , 'Controller@function-name');
你的路线应该是这样的
Route::match(['get','post'],"/addTo_cart",[ProductController::class, 'addToCart']);
【讨论】:
【参考方案2】:首先,我建议您像这样为您的路线添加一个名称
Route::post("/addTo_cart",[ProductController::class, 'addToCart'])->name('cart.addToCart');
之后我会重写你的表单的动作以使用你刚刚添加的路线的名称
<form action="route('cart.addproduct')" method="post">
另外,不要忘记您的 csrf 令牌。 “完成”的表单应该是这样的
<form action="route('cart.addproduct')" method="post">
@csrf
<input name="exampleInput">
<button type="submit">
</form>
并确保您在控制器中接受请求(示例)
public function addToCart(Request $request)
dd($request); //dump the request on the page so you can have a look at it
//more code
【讨论】:
以上是关于此路由不支持 POST 方法。支持的方法:GET、HEAD。但我只能使用 post 方法的主要内容,如果未能解决你的问题,请参考以下文章
错误:此路由不支持 POST 方法。支持的方法:GET、HEAD。 - 使用 laravel livewire
此路由不支持 GET 方法。支持的方法:POST。拉拉维尔 8
此路由不支持 POST 方法。支持的方法:GET、HEAD。",...
此路由不支持 PUT 方法。支持的方法:GET、HEAD、POST。在 laravel 中