楼主入职一个小公司做前端,该公司之前都是做 cs 项目的,现在要做 web 项目,后端让我用 js 读写本地文件、让我用 js 把文件下载到指定文件夹... - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
jadeborner
V2EX    程序员

楼主入职一个小公司做前端,该公司之前都是做 cs 项目的,现在要做 web 项目,后端让我用 js 读写本地文件、让我用 js 把文件下载到指定文件夹...

  •  1
     
  •   jadeborner 2021-01-27 15:34:39 +08:00 3965 次点击
    这是一个创建于 1763 天前的主题,其中的信息可能已经有所发展或是发生改变。
    诸如此类的要求,我该怎么跟他解释?
    好累。。
    第 1 条附言    2021-01-27 16:31:04 +08:00
    还是跟他解释了,结果争论了半天,最后含蓄地说我技术不行。
    25 条回复    2021-01-28 12:47:12 +08:00
    muunala10221
        1
    muunala10221  
       2021-01-27 15:51:15 +08:00
    我之前遇到和你一样的问题,大概是.sql 文件保存到本地,文件内容由前端来拼接,我说了很久这个应该由后端实现,之后后端直接给了我一个 csdn 的链接,内容是关于前端怎么拼接文件并且下载到本地的,这个时候我就意识到没办法沟通。
    再之后客户那里使用时出现了文件过大,chrome 下不了的情况 改为了后端去做这件事。
    可能对楼主没啥帮助...
    iamqiwei
        2
    iamqiwei  
       2021-01-27 16:13:02 +08:00
    跑路吧
    learningman
        3
    learningman  
       2021-01-27 16:15:48 +08:00
    其实是可以的(
    FileReader 转 Blob,然后传后端
    mxT52CRuqR6o5
        4
    mxT52CRuqR6o5  
       2021-01-27 16:15:52 +08:00
    web 端读文件必须由用户通过 input 元素选择 /拖拽 /粘贴,下载是由浏览器接管,js 控制不了下载到哪里
    用 electron 倒是能实现这些需求
    x4400177
        5
    x4400177  
       2021-01-27 16:17:31 +08:00   3
    看这标题我都被气个半死了
    gowk
        6
    gowk  
       2021-01-27 16:38:14 +08:00 via Android
    直接骂他 cnm
    KuroNekoFan
        7
    KuroNekoFan  
       2021-01-27 16:43:41 +08:00 via iPhone
    给他解释一下浏览器沙盒
    yazoox
        8
    yazoox  
       2021-01-27 16:44:27 +08:00
    @mxT52CRuqR6o5 好像 chrome 新版本,提供了一些能够操作 local drive 的 API
    KouShuiYu
        9
    KouShuiYu  
       2021-01-27 16:46:04 +08:00
    下载到指定文件夹没办法,读写是可以怼
    rabbbit
        10
    rabbbit  
       2021-01-27 16:47:08 +08:00
    跟老板吹 nodejs,把他活抢走.
    不行就先忍着学后端然后前后都自己写.
    再不行就跑路.
    mxT52CRuqR6o5
        11
    mxT52CRuqR6o5  
       2021-01-27 17:11:39 +08:00
    你回怼他,如果网页能随便读写本地文件
    那随便访问一个网站,隐私不就泄露光了,网页不就随随便便就往桌面下载一大堆推广链接 /程序,那上网多危险
    justin2018
        12
    justin2018  
       2021-01-27 17:16:30 +08:00
    套一个 electron ?
    liuzhaowei55
        13
    liuzhaowei55  
       2021-01-27 17:17:12 +08:00 via iPhone
    我觉得是你们对需求的理解出现了误差,建议再沟通一下。
    wr516516
        14
    wr516516  
       2021-01-27 17:17:22 +08:00
    你问他,那你干啥?
    Achiii
        15
    Achiii  
       2021-01-27 17:17:53 +08:00
    好奇什么需求要这样实现
    takemeaway
        16
    takemeaway  
       2021-01-27 17:23:05 +08:00
    确实是可以的。
    不过好像你说得也没很具体。
    zhw2590582
        17
    zhw2590582  
       2021-01-27 17:49:23 +08:00
    Chrome 是可以的,叫 Native File System API,不过接口比较新,支持程度不太好: https://caniuse.com/native-filesystem-api
    meepo3927
        18
    meepo3927  
       2021-01-27 17:53:37 +08:00
    先做好沟通吧, 他不懂就晓之以理。

    如果是不讲理的, 敷衍也好,最好直接怼。
    meepo3927
        19
    meepo3927  
       2021-01-27 17:54:26 +08:00
    和他争论啥呢, 他行他上, 不行 no bb
    zhuweiyou
        20
    zhuweiyou  
       2021-01-27 18:05:25 +08:00
    如果是 <input type=file> 用户上传的文件, 是可以读的.... 保存到本地也行的...
    zhuweiyou
        21
    zhuweiyou  
       2021-01-27 18:07:54 +08:00
    哦没仔细看, 指定文件夹是不行的
    gazagoal1
        22
    gazagoal1  
       2021-01-27 18:14:21 +08:00 via Android
    用 chrome 新的 native system api,可以存到任何用户浏览器授权的目录。已经用了一阵了。
    kekxv
        23
    kekxv  
       2021-01-27 18:46:44 +08:00 via iPhone
    直接说做不了
    wolfan
        24
    wolfan  
       2021-01-27 18:52:46 +08:00
    数据体积不大,或许 localStorage 是最好的选择,为什么非要文件直存。
    ooxiaoming
        25
    ooxiaoming  
       2021-01-28 12:47:12 +08:00 via iPhone
    哈哈我之前还遇到说在浏览器界面上打开系统命令行的...
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3059 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 34ms UTC 12:52 PVG 20:52 LAX 04:52 JFK 07:52
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86