该路由不支持GET方法。支持的方法:POST Laravel 8

时间:2020-09-24 13:06:54

标签: php laravel laravel-8

home.blade.php文件 '''

@extends('layouts.app')

@section('content')
<div class="container">
    <div class="row justify-content-center">
        <div class="col-md-8">
            <div class="card">
                <div class="card-header">{{ __('Dashboard') }}</div>

                <div class="card-body">
                    @if (session('status'))
                        <div class="alert alert-success" role="alert">
                            {{ session('status') }}
                        </div>
                    @endif

                    {{ __('You are logged in!') }}
                </div>

                <div class="card-body">
                @csrf

                <form action="/upload" method="post"> 
                <input type="file" name="image">
                <input type="submit" name="upload">
                    </form>
                </div>
            </div>
        </div>
    </div>
</div>
@endsection
'''

我的路线 '''

Route::post('/upload',function (){
   return('Halu');
});

由于我是laravel 8的初学者,所以我不知道错误的出处在哪里。该路由是通过函数定义的,我也不知道get或post在哪里出错

2 个答案:

答案 0 :(得分:1)

传递url in action属性。并在表单内传递@csrf令牌。

<form action="{{ url('/upload')}}" method="post">
 @csrf
</form>

答案 1 :(得分:1)

您尝试上传文件,必须将enctype="multipart/form-data"设置为表单 看起来应该像这样

<form action="{{ url('/upload')}}" method="post" enctype="multipart/form-data">
 @csrf
</form>

这可能会解决您的问题