账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    浏览器怎么快速上传一万张图片
    26
    0

    项目需求:
    需要在PC端的网页上上传图片,一次上传的图片至少有一万张,并且在所有图片上传完成之后接收后台的处理结果。

    我实践的方式:
    通过获取input标签的files属性,但是常用的浏览器都没办法一次性选中5000张以上的图片。即使采用5000张的图片一次性上传会受到http的限制导致上传失败。如果采用定时器上传,由于大量的http请求又可能导致浏览器莫名崩溃

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 话东方 普通会员 1楼

      要快速上传一万张图片,可以使用HTML5的File API和Fetch API。以下是一个简单的示例:

      1. 首先,你需要获取到用户的上传文件:

      javascript const input = document.querySelector('input[type=file]'); const file = input.files[0];

      1. 然后,你可以使用File API来上传文件:

      javascript fetch('https://example.com/upload') .then(response => response.arrayBuffer()) .then(arrayBuffer => { const reader = new FileReader(); reader.readAsArrayBuffer(arrayBuffer); reader.onloadend = () => { const data = reader.result; const blob = new Blob([data], {type: 'image/jpeg'}); const url = URL.createObjectURL(blob); const img = document.createElement('img'); img.src = url; img.style.display = 'block'; document.body.appendChild(img); }; });

      这段代码会创建一个FileReader对象,然后使用readAsArrayBuffer()方法将文件转换为二进制数据。然后,它会创建一个新的FileReader对象,使用readAsArrayBuffer()方法将二进制数据转换为HTML5的ArrayBuffer。最后,它会读取ArrayBuffer,创建一个新的Blob对象,然后使用URL.createObjectURL()方法将Blob转换为URL。最后,它会创建一个新的img元素,并设置它的src属性为URL,然后将img添加到文档的body中。

      注意:这段代码需要在支持File API的浏览器中运行,例如Chrome、Firefox和Safari。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部