2

我有这个带有图像上传的项目,我使用Uppy它。这是我的代码:

...
<div id="drag-drop-area" name="fotografije[]"></div>
<script src="https://transloadit.edgly.net/releases/uppy/v1.6.0/uppy.min.js"></script>
    <script>
        var uppy = Uppy.Core()
        .use(Uppy.Dashboard, {
          inline: true,
          target: '#drag-drop-area'
        })
        .use(Uppy.Tus, {endpoint: 'https://master.tus.io/files/'}) //you can put upload URL here, where you want to upload images

      uppy.on('complete', (result) => {
        console.log('Upload complete! We’ve uploaded these files:', result.successful)
      })
    </script>
...

我试过name="fotografije[]"indiv但当然没有帮助。我只需要命名这个输入,以便我的图像可以上传到服务器。我该怎么做Uppy

4

1 回答 1

1

所以你需要使用 Uppy Dashbord 和 Laravel 下载多个文件

您的后端服务器位于https://master.tus.io/files/吗?如果需要,请更正它。

然后,您必须将请求从前端发送到控制器(在您的后端 Laravel 中),该控制器将此请求作为 Ajax POST 处理。

这可能看起来像(在添加 routes.php 作为 POST 之后)

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class UploadFileController extends Controller
{


public function showUploadFile(Request $request) {

    $file = $request->file('fotografije');

    //Display File Name just for check or do a dd
    echo 'File Name: '.$file[0]->getClientOriginalName();


    //Move Uploaded File
    $destinationPath = 'uploads';
    $file->move($destinationPath,$file->getClientOriginalName());
 }
}

另外,不要忘记将 crsf 令牌添加到您的 uppy 代码中以避免错误请求。

希望这有帮助

于 2020-06-02T18:43:54.033 回答