内容类型:应用程序/ pdf更改为内容类型:应用程序/八位字节流

问题描述

我有一个GET Http请求,如下所示

const getData = async (req: Request,res: Response): Promise<void> => {
  try {
    .... some code...
    const response = await createPdfResponse(location);
    res.setHeader("Accept","application/pdf");
    res.setHeader("Content-Type","application/pdf");
    res.setHeader(
      "Content-disposition","inline; filename=fileName.pdf"
    );

    res.send(200,response);
  } catch (error) {
    const errorBody = error.body;
    const statusCode = error.code;
    res.send(statusCode,{ errorBody });
  }
};

当我得到响应时,它带有Content-Type:application / octet-stream。

我需要Content-Type:application / pdf。

有人可以帮我吗?我将非常感谢您。

解决方法

我找到了解决方案。这是由于重新设置代码引起的:

https://github.com/restify/node-restify/blob/master/lib/response.js#L477

只需使用res.sendRaw(200,response)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...