当<input type="file"> 时配置上传文件到指定服务器

当 input type=”file” 时配置上传文件到指定服务器

HTML 代码
<input id="testFile"  onchange="fileChange()" accept="application/pdf" type="file"/>

accept属性是规定上传文件的类型,当前以PDF为例

js 代码
fileChange = function() {
     var formData = new FormData();
     var fileName = $('#testFile').val();
     var files = $('#testFile')[0].files[0];
     formData.append("File", files);
     formData.append("FileName", fileName);  

     $.ajax({
             url: "上传地址",
             type: 'POST',
             data: formData,
             dataType:'json',
             processData: false,// 告诉jQuery不要去处理发送的数据
             contentType: false, // 告诉jQuery不要去设置Content-Type请求头
             success: function (res) {
                              console.log(res)
                }
            });
        }
php 代码

路由

// 文件上传api接口
Route::group([
    'namespace' => 'Api'
], function () {
    Route::post('上传地址', '文件上传控制器名@ApplyFileUpload');
});
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Storage;
——————————————————————————————————————————————————————————————
class 控制器名 extends Controller
{
    // 文件上传
    public function ApplyFileUpload(Request $request)
    {
        $data = [];

        // 通过$request->file()获取上传的文件可以做验证,这里就不写了

        // 循环处理多文件
        foreach ($request->file() as $file) {
            // 存储文件
            $path = Storage::disk('public')->putFile(date('Ymd'), $file);
            // 文件路径
            array_push($data, ['url' => Storage::url($path)]);
        }

        return response(['errno' => 0, 'data' => $data]);
    }
}

我是菜鸟phper,此文为个人笔记,各为大神看到问题可以指出来,谢谢:pray:,也希望可以帮助到需要帮助的phper。

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 1
随波逐流

可以看下 Laravel 项目开发规范 , 会有很大进步的哦~

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!