【发布时间】:2016-06-03 12:33:21
【问题描述】:
我的 C# web api 中有以下代码
HttpResponseMessage result = null;
var stream = new MemoryStream(File.ReadAllBytes(tempFileName));
result = Request.CreateResponse(HttpStatusCode.OK);
result.Content = new StreamContent(stream);
result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
result.Content.Headers.add("fileName", Path.GetFileName(tempFileName ));
File.Delete(tempFileName);
return result;
并在客户端跟随
var deferred = this.$q.defer();
this.$http({
method: 'GET',
url: someURL,
responseType: 'arraybuffer'
}).then(function (response: any) {
var blob = new Blob([response.data], { type: "application/octet-stream" });
var link = document.createElement('a');
var url = URL.createObjectURL(blob);
link.setAttribute('href', url);
link.setAttribute("download", "demo.doc");
link.click();
deferred.resolve();
});
return deferred.promise;
但是当我在客户端 javascript 上添加 watch for response.headers() 时,它只显示我关注
{content-type: "application/octet-stream", cache-control: "private"}
谁能帮我找到文件名标头在哪里?
【问题讨论】:
标签: javascript http-headers asp.net-web-api2 httpresponse