当前位置: 首页 > 知识库问答 >
问题:

返回具有nginx后面的节点应用的内容类型响应标头

刁越
2023-03-14

我们有一个使用node js(express js)构建的web应用程序,它位于nginx后面。

对于特定的API,我们希望将内容类型响应头设置为“text/plain”。控制器中有以下代码。

res.setHeader('Content-Type','text/plain');res.send(响应);

当服务器不在nginx后面时,这是有效的。但是当服务器在nginx后面时,响应头仍然是“应用/json

nginx配置粘贴如下:

#kZyguser www-data;
user root;
worker_processes 4;
pid /var/run/nginx.pid;

events {
        worker_connections 20000;
        # multi_accept on;
}

http {

        ##
        # Basic Settings
        ##

        sendfile on;
        tcp_nopush on;
        tcp_nodelay on;
        keepalive_timeout 65;
        types_hash_max_size 2048;
        # server_tokens off;

        # server_names_hash_bucket_size 64;
        # server_name_in_redirect off;

        include /etc/nginx/mime.types;
        default_type application/octet-stream;

        ##
        # Logging Settings
        ##
        access_log /var/log/nginx/access.log;

共有1个答案

金成济
2023-03-14

你试过在nginx中使用proxy_pass_header吗?

proxy\u pass\u头内容类型

http://wiki.nginx.org/HttpProxyModule

顺便说一句,在您的问题中,您的nginx配置可能不完整。

 类似资料:
  • 我试图使用第三方Web服务(基于php)在asp.netc#应用程序,但失败的服务配置。已经尝试添加服务/Web引用-所有相同的错误: 响应消息的内容类型 text/html 与绑定的内容类型不匹配(text/xml;charset=utf-8)。如果使用自定义编码器,请确保正确实现 IsContentTypeSupport 方法。响应的前 402 个字节是:” [已手动编辑响应以正确显示 对我来

  • 我有一个Vue.js应用程序,我的部署设置非常标准, 豆荚- 这是相关代码, Dockerfile: Nginx。形态: Ingress Prod:(为了简洁起见,仅保留必要的位), 本地入口: 我得到的错误是, 未捕获的语法错误:意外令牌 未捕获的语法错误:意外令牌 网络选项卡中这两种资源的内容类型都是。 编辑1: 这是部署后我的文件夹的外观, 我的js文件的路径是,

  • nginx代理服务响应成功,但没有返回内容 配置如下:

  • 我在REST WebService中有自定义错误处理。我有返回XML/JSON作为响应的方法。在SpringBoot 2.0.9版本上一切都很好。但是在迁移到最新的(2.2.4)之后,我的错误处理测试失败了: 经过研究,我发现这与将Spring升级到5.1版本有关。文档: 错误响应的内容协商@RequestMapping的Products条件不再影响错误响应的内容类型。 如何在最新版本中重现Spr

  • 有人能解释一下为什么我通过Postman和http从外部http API得到不同的响应吗。NetCore web Api HttpClient。 这是一个密码 结果是 但Postman返回完整有效的json结果。 为什么结果从。NetCore HttpClient是部分的? 我已经尝试了指定请求头这样的选项: 还补充道: 没有帮助。

  • 我试图向一个我无法控制的服务器发出GET请求,该服务器在头中返回一个无效值:“application/json;charset=”。 当我尝试执行GET调用时,Spring在尝试解析该值时抛出一个InvalidMimeTypeException,因为它正确地期望在that=符号后面应该有一个实际的字符集。