我正在用ASP.NET Core(后端)和VueJ(前端)做一个小项目,通讯是通过axios进行的。
我想将PDF文件发送到服务器上的本地路径。并在新窗口中显示。
我一直在寻找信息的几天,但我只会更加困惑。 这是我去过的最接近的地方,老实说,我不知道自己在做什么:(
(我为我的英语表示歉意)
VueJS和Vuetify
this.$proxies.menusProxy
.getFileStream(
this.eitem.identificador,
{
params: {
file: "Clientes.pdf",
},
},
)
.then((x) => {
console.log("Done: ", x);
})
.catch((x) => {
console.log("Error: ", x);
});
})
.catch((x) => {});
ASP.NET
public async Task<HttpResponseMessage> GetFileStream(string file)
{
var uploads = Path.Combine("c:\\Shared\\06W03R0821105PLAE1\\"+file);
MemoryStream responseStream = new MemoryStream();
Stream fileStream = System.IO.File.Open(uploads, FileMode.Open);
fileStream.CopyTo(responseStream);
fileStream.Close();
responseStream.Position = 0;
HttpResponseMessage response = new HttpResponseMessage();
response.StatusCode = HttpStatusCode.OK;
response.Content = new StreamContent(responseStream);
string contentDisposition = string.Concat("attachment; filename=", file);
response.Content.Headers.ContentDisposition =
ContentDispositionHeaderValue.Parse(contentDisposition);
return response;
}
控制台响应:
非常感谢大家