错误:此路由不支持 POST 方法。支持的方法:GET、HEAD。 - 使用 laravel livewire
Posted
技术标签:
【中文标题】错误:此路由不支持 POST 方法。支持的方法:GET、HEAD。 - 使用 laravel livewire【英文标题】:error: The POST method is not supported for this route. Supported methods: GET, HEAD. - using laravel livewire 【发布时间】:2021-09-25 07:52:11 【问题描述】:我正在尝试使用 Laravel livewire 进行图像上传,但是当我单击“上传”按钮以测试功能时,会出现此错误
此路由不支持 POST 方法。支持的方法:GET、HEAD'
节目:
路线
Route::get('/upload', UploadFoto::class)->name('upload.foto.user');
CONTROLLER(使用 dd 进行测试)
<?php
namespace App\Http\Livewire\User;
use Livewire\Component;
class UploadFoto extends Component
public $foto;
public function render()
return view('livewire.user.upload-foto');
public function storageFoto()
dd('aqui');
查看 @extends('layouts.app')
@section('content')
<div>
-- To attain knowledge, add things every day; To attain wisdom, subtract things every day. --
<form action="#" method="post">
<input type="file" name="foto" id="foto" wire:submit.prevent="storageFoto">
<button type="submit">Upload</button>
</form>
</div>
@endsection
【问题讨论】:
将您的路由定义更改为 POST,对于表单操作,请使用命名参数,如<form action="route('upload.foto.user')" method="post">
。您可能会将请求发送到另一个地方!
我更改了 "
【参考方案1】:
您在这条路线上设置了 get 方法 - 但上传使用 post 方法。改变它:
Route::post('/upload', UploadFoto::class)->name('upload.foto.user');
【讨论】:
也许是因为你有 dd() 函数在起作用?) 那我可以改变什么?【参考方案2】:将路由方法改为 Post
Route::post('/upload', UploadFoto::class)->name('upload.foto.user');
【讨论】:
以上是关于错误:此路由不支持 POST 方法。支持的方法:GET、HEAD。 - 使用 laravel livewire的主要内容,如果未能解决你的问题,请参考以下文章
此路由不支持 GET 方法。支持的方法:POST。在插入/存储
Laravel 8 - 此路由不支持 POST 方法。支持的方法:删除
此路由不支持 GET 方法。支持的方法:POST。拉拉维尔 8