2015-10-14 30 views
1

我在發送ajax get請求以下載由Java中的REST API提供的文件時遇到問題。使用ajax獲取請求下載序列化文件

的REST API

@GET 
@Path("/{modelName}/export") 
@Produces(MediaType.APPLICATION_OCTET_STREAM) 

的API工作正常。問題是我的阿賈克斯電話

$.ajax({ 
       type: "GET", 
       url: serverUrl+'/api/models/'+modelName+'/export', 
       success : function(res){ 
        alert("success"); 
        console.log(res); 
       }, 
       error : function(res){ 
        alert("error"); 
        console.log(res);     
       } 
      }); 

當這個調用被執行時,我需要文件被下載。我該如何修改ajax調用?

我在執行它時獲得了成功警報,並且在控制檯中打印了一些隨機字符串。

+0

請看到的問題是:http:/ /stackoverflow.com/questions/4545311/download-a-file-by-jquery-ajax –

回答

1

當您下載文件時,您不需要ajax。無論如何由瀏覽器導致文件下載異步。

您可以使用普通的HTML這個purpouse:

<a href="YourPath">Download File</a> 

但是,如果你想用js文件,你可以做這樣的:

window.location.href = serverUrl+'/api/models/'+modelName+'/export';