未在jQuery AJAX中下载Servlet输出流
我有以下代码未在jQuery AJAX中下载Servlet输出流,ajax,servlets,Ajax,Servlets,我有以下代码 @Override protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { response.setContentType("text/csv;charset=UTF-8"); try (PrintWriter out = response.getWriter()) {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
response.setContentType("text/csv;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
String headerKey = "Content-Disposition";
String headerValue = String.format("attachment; filename=\"%s\"", "prueba.csv");
response.setHeader(headerKey, headerValue);
out.println("test");
OutputStream outStream = response.getOutputStream();
outStream.flush();
outStream.close();
}
}
当我从URLlocalhost:8080/downloadServlet调用servlet时,它会下载一个.CSV文件,但当我从$.ajax post请求调用servlet时,它就不起作用了
这是我的$.ajax代码
$.ajax({
url: "downloadServlet",
type: "post",
data: {id: 1, pass: "123"},
error : function (xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
}
});
如何使用$.ajax下载SERVLET OutputStream?我也面临同样的问题:(