Angular Web api文件下载

时间:2016-07-18 15:58:05

标签: c# angularjs asp.net-web-api

Hey Guys我试图通过Web api和angular设置文件下载,当我知道Exact文件类型但我不知道文件类型时,我需要下载.docx文件和另一个时间我需要下载一个.pdf文件我到底需要做什么......我想我需要传递带有扩展名的文件名,我无法从有角度的方面接收它。

这是我的Api方法

public HttpResponseMessage GetStudentCase(studCaseReportModel studPreDetails)
    {

      ...
                result = new HttpResponseMessage(HttpStatusCode.OK);
                string fileName = studentcase.reportDocUrl;
      ...
                result = Request.CreateResponse(HttpStatusCode.OK);
                result.Content = new StreamContent(new FileStream(path, FileMode.Open, FileAccess.Read));
                result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
                result.Content.Headers.Add("x-filename", outFileName);
                result.Content.Headers.ContentDisposition = new System.Net.Http.Headers.ContentDispositionHeaderValue("attachment");
                result.Content.Headers.ContentDisposition.FileName = outFileName;           

        return result;
    }

这是我的角色代码

$http.post(....).then(function (response) {
                var headers = response.headers();

                var filename = headers['x-filename'] || 'download.bin';
            },
}

这是我得到的结果.... properties I got in header after callback... 谢谢你的帮助...

0 个答案:

没有答案