可能是chrome出于安全考虑, 在上传文件时, 拿不到文件在本机的实际路径.
可是, 我的需求有些特殊. 用户需要在特定的机器上选择文件, 后台服务是部署在同一台机器上. 因为文件特别大, 经过接口上传没有意义, 就打算直接拿到文件地址发给后台.
有什么办法可以设置浏览器实现这个功能吗? 最好chrome或Firefox
可能是chrome出于安全考虑, 在上传文件时, 拿不到文件在本机的实际路径.
可是, 我的需求有些特殊. 用户需要在特定的机器上选择文件, 后台服务是部署在同一台机器上. 因为文件特别大, 经过接口上传没有意义, 就打算直接拿到文件地址发给后台.
有什么办法可以设置浏览器实现这个功能吗? 最好chrome或Firefox
你的需求跟你的描述没什么关系,你的问题是走错方向。其实你要做的是:
你并不需要上传文件,自然也不需要上传接口,最后也不需要考虑由上传接口获取真实路径。
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
纯靠浏览器是不可以拿到文件的本地真实路径的,这个涉及到隐私问题浏览器开发商不可能给你开放这种API(做了就是在自掘坟墓,有这种API的浏览器谁敢用。一不小心访问到灰产网页分分钟本地文件都暴露出去了)。
可以考虑自己魔改一份
Chromium
(误),其实使用 ElectronJS 做成桌面应用通过打包在应用内的NodeJS
去获取本地路径会比较合适。但最好还是让部署在本地的后端服务帮你做好本地文件的路径扫描,然后反馈给你一个可选列表让用户去选择,这样实现和改造的成本最低。