You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为转发至Service A的Nginx请求添加自定义JSON请求体?

解决NGINX转发GET请求时添加JSON请求体的问题

你可以通过NGINX内置的proxy_set_body指令直接设置请求体,同时配合proxy_set_header指定Content-Type头,就能实现给GET请求添加JSON体的需求。

修改后的完整配置如下:

events {}
http {
    server {
        listen       19202;
        server_name  localhost;

        auth_basic           "Restricted Area";
        auth_basic_user_file /tmp/htpasswd;

        location /api/v1/proxy/info {
            proxy_pass http://api:39999;
            allow all;
            # 新增配置:指定请求体格式和内容
            proxy_set_header Content-Type application/json;
            # 替换成你实际需要的JSON内容,内部单引号需转义为\'
            proxy_set_body '{"client_ip": "$remote_addr", "request_time": "$time_local"}';
        }
    }
}

关键指令说明:

  • proxy_set_header Content-Type application/json;:强制设置请求头,让后端Service A识别到请求体为JSON格式
  • proxy_set_body:直接定义要添加的JSON请求体,你可以根据业务需求替换为任意合法JSON字符串,还能嵌入NGINX内置变量(比如客户端IP、请求时间)实现动态内容。

注意:HTTP规范允许GET请求携带请求体,但部分服务框架可能默认不处理这类请求,需确保你的Service A支持接收GET请求的JSON体再使用该方案。

内容的提问来源于stack exchange,提问作者mrp1nk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 21:01:10