Client 前端处理部分视频讲解
Server 后端处理部分视频讲解
文件切片上传(切片)
Client:
-
html 基本结构搭建
-
<style> body>div { margin: 8px; } </style> <body> <h4>deng-cl</h4> <div> <input type="file" id="file"> </div> <div> <button class="upload">上传</button> </div> <script type="module" src="./src/index.js"></script> </body>
-
-
JS 常量定义
-
import axios from "axios"; // -- 依赖库 // -- 操作提示 const UPLOAD_INFO = { "NOT_SELETED_FLIE": "请先选择文件", "NOT_SUPPORTED_TYPE": "不支持该文件类型", "FETCH_SUCCESS": "上传成功", "FETCH_FAILED": "上传失败" }; // -- 文件类型限制 / 切片大小定义 const ALLOWEN_TYPE = ["image"]; const CHUNK_SIZE = 1024 * 1024; // -- 请求 const BASE_URL = "http://localhost:3000"; const FETCH_API = { "UPLOAD": "/upload", "MERGE": "/merge", };
-
-
获取文件上传的 input 与 upload 按钮 DOM 元素
-
const fileInputEl = document.querySelector("#file") // -- input dom const uploadButtonEl = document.querySelector(".upload") // -- button
-
-
监听 upload 按钮点击执行文件上传操作
-
uploadButtonEl.addEventListener("click", handleFileUpload, false)
-
对应处理函数代码如下 → 🔺里面使用其它的函数统一放在 "辅助函数栏" 中(使用 "▲ util" 进行标记)
-
async function handleFileUpload() { // -- 1. 点击上传按钮,触发该函数 const files = fileInputEl
-