首页 新闻 搜索 专区 学院

html上传文件获取文件全路径问题

0
悬赏园豆:20 [已解决问题] 解决于 2020-10-20 21:42

由于浏览器安全问题,使用<input type="file" onchange=getfilrinfo()>触发js后,获取到的文件路径全部都是C:/fakepath/格式的。
求助有没有好的办法或者文件上传的组件可以获取到路径。
(备注:很多人会问,后台直接拿到文件流就好了啊,要文件路径干啥?
我想说,这个吧,人家接口参数里就是要传文件路径。)

马明明的主页 马明明 | 初学一级 | 园豆:190
提问于:2020-10-14 18:41
< >
分享
最佳答案
1

安全考量,瀏覽器不會讓你取得完整路徑
試想,真讓你取得完整路徑,使用者電腦裡有啥東西你不就全知道了嗎

收获园豆:20
RosonJ | 老鸟四级 |园豆:4905 | 2020-10-14 20:06

问题还没有上升到这种高度。只是浏览器有安全策略,这个策略可以设置的。不过基于开发者的角度来讲,不可能让每个用户都去设置浏览器安全性。我只是想找到有没有获取到文件路径的方法。

马明明 | 园豆:190 (初学一级) | 2020-10-14 20:12

@马明明:
你確定參數要的路徑指的是使用者PC上的路徑
這個路徑對接口有什麼意義?

RosonJ | 园豆:4905 (老鸟四级) | 2020-10-14 20:15

@RosonJ: 不好意思点错了点到反对了。我确定传的是本地路径,我给你解释一下。

马明明 | 园豆:190 (初学一级) | 2020-10-14 20:17

@RosonJ: 我打个比方:小云(系统A)是一个专门提供云应用的系统(CS架构),云应用就是说,假如我在我本地通过我的CS系统发布一个魔兽争霸(举个例子)的应用后,其他用户只需要通过浏览器登录到指定系统,就可以不用安装魔兽争霸,直接使用。好,那么小云在发布应用的时候,肯定要选择文件路径吧,这个在CS架构上肯定是比较好实现的,没有浏览器安全限制什么的。
这个时候,小刘(系统B,BS架构)不知道啥情况就给参活进来了,你说本身小云的活自己干的好好的,小刘进来干啥来了?好吧,通过协商,小云把发布应用的入口给到了小刘,用户需要进入小刘的系统发布应用,然后小刘把应用的路径通过接口传给小云,然后小云再执行它的操作。。。。
这么说,不知道可否理解?

马明明 | 园豆:190 (初学一级) | 2020-10-14 20:35

@马明明:
懂,實做很簡單,也沒什麼選擇
就是讓使用者自己填寫

RosonJ | 园豆:4905 (老鸟四级) | 2020-10-14 20:37

@马明明:
基本上在沒有第三方工具(例: 瀏覽器插件)的情況下
純網頁是無法取得這些資訊的
你可能要朝著插件或外掛工具的方向嘗試

RosonJ | 园豆:4905 (老鸟四级) | 2020-10-14 20:42

@RosonJ: OK,感谢指引

马明明 | 园豆:190 (初学一级) | 2020-10-14 20:47
其他回答(2)
0

接口里的文件路径估计是指你站点下面的某个文件路径,正常的处理是你把本地文件上传并保持到你的web服务器的某个目录下,上传成功后,然后把站点下刚上传的文件的路径(服务器文件的路径)传给接口,前提是文件必须上传到服务器,在你本地别人是无法访问的

E行者 | 园豆:1741 (小虾三级) | 2020-10-14 19:01

要的就是文件在本地的存储路径。

支持(0) 反对(0) 马明明 | 园豆:190 (初学一级) | 2020-10-14 19:06

@马明明: 问题描述没有交代清楚,你直接找接口文档或它提供的相关示例自己动手试下,根据你上面的描述,别人是无法给出具体解决方案的

支持(0) 反对(0) E行者 | 园豆:1741 (小虾三级) | 2020-10-14 19:44
0

人家是谁?把接口的文档拿出来看看。。。

顾晓北 | 园豆:10357 (专家六级) | 2020-10-14 19:07

我解释一下,首先,这个文件不是你想的那种图片,文档啊这种。
而是,例如你电脑上qq整个文件夹里启动qq的那个快捷方式,我这里的需求,不但要获取到这个快捷方式的路径,还要过去到它的工作目录,所以,他要的还真就是本地路径。

支持(0) 反对(0) 马明明 | 园豆:190 (初学一级) | 2020-10-14 19:17

@马明明: 驴唇不对马嘴啊,我是说把文档拿出来看看。。。

由于浏览器安全问题,你file里面拿到的路径,有时候只是文件名,有时候是完整路径(不管真假),不同浏览器是不一样的,所以,看看接口文档让传什么参数。。。

支持(1) 反对(0) 顾晓北 | 园豆:10357 (专家六级) | 2020-10-14 19:53

@顾晓北:

这破电脑太卡了,终于给你找到了。

支持(0) 反对(0) 马明明 | 园豆:190 (初学一级) | 2020-10-14 20:46
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册