在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ js 能夠?qū)崿F(xiàn)在下載文件的時候調(diào)系統(tǒng)的選擇下載路徑的彈窗嗎

js 能夠?qū)崿F(xiàn)在下載文件的時候調(diào)系統(tǒng)的選擇下載路徑的彈窗嗎

最近項目有個需求,是在瀏覽器里點擊下載按鈕時,能彈出文件下載到哪個路徑的對話框;請教下,這個功能js有可能通過調(diào)用某個接口實現(xiàn)嗎

回答
編輯回答
孤毒

沒有, 網(wǎng)頁中 js 無法操作文件系統(tǒng)

2017年2月18日 11:13
編輯回答
陌上花

這個彈框不是js調(diào)用哪個接口實現(xiàn)的,彈框的出現(xiàn)是瀏覽器的行為,一般都是通過后端實現(xiàn)的。
以java為例,點擊“下載”按鈕,向服務器發(fā)送下載請求,服務器接受請求并處理,重點來了,服務器處理完要向前端發(fā)response,這時候需要設(shè)置特定的response的header(我感覺瀏覽器出現(xiàn)選擇路徑等信息的對話框就是按照這個header判斷的,純粹個人猜測,有準確知道的,歡迎留言)
核心代碼大概是這個樣子:

//設(shè)置ContentType
  response.setContentType("application/octet-stream; charset=utf-8");
//處理中文文件名中文亂碼問題
  String fileName=new String(file.getName().getBytes("utf-8"),"ISO-8859-1");
  response.setHeader("Content-Disposition", "attachment; filename=" + fileName);
  IOUtils.copy(new FileInputStream(file), response.getOutputStream());

我之前有寫過下載文件,瀏覽器彈出下載框的需求,一開始也是糾結(jié)于這個下載框是怎么出現(xiàn)的,后來發(fā)現(xiàn),我的點錯了,最后使用的上面的代碼實現(xiàn)的,希望有所幫助

2017年10月4日 06:28
編輯回答
乖乖瀦

這個是瀏覽器決定的,
比如chrome 默認用戶下載目錄, 不需要確認
其它瀏覽器有些在下載時可以自己選擇保存位置

2017年2月21日 18:20
編輯回答
萢萢糖

這個跟你的手機和瀏覽器有關(guān),
有的可能會讓你確認保存位置,有的直接存到默認位置

2017年4月4日 05:09