【发布时间】:2017-04-17 18:54:06
【问题描述】:
我下载了一个文件作为 ajax 的响应。如何从content-disposition 获取文件名和文件类型并为其显示缩略图。我得到了很多搜索结果,但找不到正确的方法。
$(".download_btn").click(function () {
var uiid = $(this).data("id2");
$.ajax({
url: "http://localhost:8080/prj/" + data + "/" + uiid + "/getfile",
type: "GET",
error: function (jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
},
success: function (response, status, xhr) {
var header = xhr.getResponseHeader('Content-Disposition');
console.log(header);
}
});
控制台输出:
inline; filename=demo3.png
【问题讨论】:
-
控制台说什么?
-
你为什么要设置
window.location.href ="http://localhost:8080/prj/" + data + "/" + uiid + "/getfile";?这将导致浏览器离开页面并仅显示该 URL。如果您离开页面,您希望如何显示图像的缩略图?为什么需要服务器建议您保存文件的文件名才能生成缩略图? -
从内容配置中获取文件名是一个问题。您无法从中获取文件类型,至少不可靠,这就是内容类型标头的用途。缩略图显示将来自数据,是一个完全独立的问题。
-
我需要在缩略图附近显示文件名。
-
但我可以从文件名本身找到文件类型
filename.jpg
标签: javascript ajax filenames file-type content-disposition