封装开源了一个调用Alist API进行前端文件上传的JS库,支持CDN引入

为了方便后期调用Alist进行文件上传,特地将一篇往期文章的JS部分封装成了CDN库。

项目开源地址

话不多说,直接上示例。

CDN引入,快捷调用示例(HTML)

<!DOCTYPE html>
<html lang="zh-CN">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>简单示例-AlistUploaderJS</title>
    <!-- CDN引入 -->
    <script src="https://testingcf.jsdelivr.net/gh/4444TENSEI/AlistUploaderJS@0.1.3/npm/alist-uploader.js"></script>
  </head>

  <body>
    <input type="file" id="fileInput" multiple />
    <button type="button" onclick="uploadFiles()">上传</button>

    <script>
      const alistUploaderOptions = new AlistUploader({
        // [必须]你的Alist服务地址
        baseUrl: "https://alist.example.com",
        // [必须]Alist账号
        username: "admin",
        // [必须]Alist密码
        password: "123456",
        // [必须]上传到哪个目录,例如要传到"https://alist.example.com/webdav",则照下方填写
        uploadRootFolder: "webdav",
        // [可选]上传并发数量, 默认值为 1。
        concurrency: 3,
        // [可选]为每次上传自动创建以时间命名(14位数字)的文件夹, 可选, 默认值为 false。
        createTimestampFolder: true,
        // [可选]控制台调试开关, 默认值为 false。
        debug: true,
        // [可选]版本号信息输出开关, 默认值为 true。
        showVersionInfo: true,
        // [可选]上传类型, 默认值为 "stream"也就是流式传输, 也可设置为"form"表单方式。
        uploadMethod: "stream",
      });

      // 上传按钮
      function uploadFiles() {
        const files = document.getElementById("fileInput").files;
        alistUploaderOptions.on("complete", (allSuccess) => {
          alert(allSuccess ? "所有文件上传完成!" : "部分文件上传失败。");
        });
        alistUploaderOptions.uploadFiles(files).catch((error) => {
          console.error("上传出错:", error);
        });
      }
    </script>
  </body>
</html>

相关文章

暂无评论

发送评论 编辑评论


				
上一篇
下一篇