如何用JavaScript从服务器接收字节数组并下载为pdf
我试图转换一个来自服务器的字节数组,并将其加载为pdf,下载工作正常,但文件已损坏 我正在尝试通过JavaScript实现这一点,我正在使用vue.js 调用服务器并带来字节数组的函数:如何用JavaScript从服务器接收字节数组并下载为pdf,javascript,c#,vue.js,Javascript,C#,Vue.js,我试图转换一个来自服务器的字节数组,并将其加载为pdf,下载工作正常,但文件已损坏 我正在尝试通过JavaScript实现这一点,我正在使用vue.js 调用服务器并带来字节数组的函数: function getManualAcademico(id) { const url = '/Sec/Ent/Get?d='; window.config.axios.get(url + id) .then(function (response) {
function getManualAcademico(id) {
const url = '/Sec/Ent/Get?d=';
window.config.axios.get(url + id)
.then(function (response) {
var manualAcademico = response.data;
Here i am calling the function sending the response data (array of bytes)
DownloadPDF(manualAcademico);
})
.catch(function (error) {
logInConsole(error);
});
}
function DownloadPDF(manualAcademico) {
var byteArray = new Uint8Array(manualAcademico.manual.$value);
var a = window.document.createElement('a');
a.href = window.URL.createObjectURL(new Blob([byteArray], { type: 'application/pdf' }));
a.download = "ManualAluno.pdf";
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
}
和服务器:
[EnableCors(origins: "*", headers: "*", methods: "*")]
public IHttpActionResult Get(int Id)
{
return Ok(new
{
manual = SEC.Get(Id)
});
}
下载正在进行,但文件已损坏,知道吗
谢谢。尝试将
响应类型:“arraybuffer”
添加到请求中
比如:
window.config.axios.get({url: url + id, responseType: 'arraybuffer'})..
在这种情况下,尝试将
响应类型:“arraybuffer”
添加到请求中
比如:
window.config.axios.get({url: url + id, responseType: 'arraybuffer'})..
在这种情况下