如何获取上传文件的路径?

来源:5-6 编码实战:实现秒传功能接口+小结

ckx0709

2019-04-17

我想获得上传本地文件的路径,如何获得?
前端代码:
图片描述
后端:
图片描述
我想在实现文件的拷贝上传前就对文件进行算法校验,得到fileHash,在去tbl_file中比对,如果存在,就不再进行文件的拷贝。

写回答

1回答

xiaomo

2019-04-17

可以类似这样获取文件路径:

<div>
  <form action='#' method="post" enctype="multipart/form-data">
    <input id="file" name="file" type="file" class="file" onchange="onChange(this);" 
data-msg-placeholder="选择文件">
  </form>
</div>

<script>

function onChange(objs) {
  // document.getElementById('file').value可以读取文件路径
  alert(document.getElementById('file').value);
  var fileObj = objs.files[0];
  var freader = new FileReader();
  freader.onload = function() {
    // 读取文件内容
    alert(freader.result);
  }
  freader.readAsArrayBuffer(fileObj);
}
</script>

不过一般情况下,在浏览器里不建议计算大文件的hash, 因为js计算效率比较低, 而且可能会很耗内存;带宽够或者传输速度够快的话,可能传输的时间也多不了多少。一般app端/pc端做秒传的场景比较多。

0
0

Go实战仿百度云盘-实现企业级分布式云存储系统

紧随“云时代”技术潮流,分布式云存储系统,做第一代云程序员

1077 学习 · 494 问题

查看课程