Laravel 5.8 ajaxupload POST 419(未知状态)

时间:2019-06-17 20:12:49

标签: php ajax laravel ajax-upload

我有问题。我想使用ajaxupload上传img,但是我做不到,我总是收到异常POST 419(未知状态)。我使用文档做所有事情,但我不知道。

所以,我的路线:

val alertDialog = AlertDialog.Builder(context)
        .setTitle("My title")
        .setCancelable(true)
        .setMessage("My message")
        .create()

        alertDialog.show()

在主要布局中,我有:

Route::post('/products/image','ProductController@image');

我的form.blade.php

<meta name="csrf-token" content="{{ csrf_token() }}">

还有我的app.js:

 <form action="{{route('')}}" method="post">
 @csrf
 <div class="box box-danger box-solid file-upload">
    <div class="box-body">
       <div id="single" class="btn btn-success" 
        data-url="products/image" data-name="single">
           Chose
        </div>
        <div class="single"></div>

2 个答案:

答案 0 :(得分:0)

标题部分应该有类似的内容

<meta name="_token" content="{{ csrf_token() }}"><meta>

<meta name="csrf-token" content="{{ csrf_token() }}">

这是一个通用脚本,应加载到任何DOM元素中

<script>
    $(function () {
        $.ajaxSetup({
            headers: {'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')}
        });
    });
</script>

注意:请使用正确的名称name =“ _ token”或name =“ csrf-token”

答案 1 :(得分:0)

我对Dropzone上传有完全相同的问题 请不要忘记添加enctype =“ multipart / form-data”作为表单属性 并尝试像这样发送令牌数据

data: {
   _token: $('meta[name="csrf-token"]').attr('content'),
   name: buttonSingle.data('name')
},