2016-05-11 63 views
1

我的MS Edge 20.10240.16384.0有一些問題(最新版本有相同的錯誤)。 我想下載JS文件(明確的JS,我沒有機會使用任何庫)。這是我這樣做的方式:MS邊緣上的下載文件名無效

window.open(url); 

其中url變量是我要下載的文件的URL。立即打開該URL會導致文件下載。問題是,下載的文件沒有擴展名,它的名字看起來像

'=_UTF-8_B_dGVzdEZpbGVOYW1lLV9kc2FkLnBkZg==_='

原始文件名是'test.pdf'和我的方法可以完美兼容瀏覽器,Firefox和IE11。 有沒有解決方法?

謝謝。

+0

亞歷克斯,我對邊緣小組的工程師,很想看看這個更加緊密。你能提供一個能夠重現問題的URL嗎?我很樂意調查Edge,IE,Chrome和Firefox之間的差異,看看我們是否應該修改我們目前的行爲。 – Sampson

回答

0

以某種方式修復MS Edge中的錯誤。我們可以像這樣做一些愚蠢的事情。

enter image description here

我不知道關於你的服務器的編程語言。所以我只是發佈一個關於它的流程圖供您實施。

這裏有一個客戶端代碼: (我很抱歉,我使用的庫(jQuery的))

var uid = "12093ujdskf3"; 
var url; 
$.ajax({ 
    dataType: "json", 
    url: "http://www.example.com/download.jsp", 
    data: { 
    uid: uid 
    }, 
    error: function(){ 
    url = null; 
    }, 
    success: function(data){ 
    url = data.url; 
    } 
}); 
if (url == null){ 
    alert("Error occurred!"); 
    return; 
} 
window.open(url); 
+0

這不會產生@Alex詢問 –

+0

的'test.pdf'結果的確如此。據我瞭解,「= _UTF-8_B_dGVzdEZpbGVOYW1lLV9kc2FkLnBkZg == _ =」是文件名稱結果,而不是輸入URL。 – Josiah

+0

剛編輯答案。但是,沒有線索從url中查找實際的文件名。 – mob41