nginx 返回长度限制 Published on May 21, 2025 in 随笔 with 0 comment ✅ 解决步骤(立即可用) 🔧 1. 修改 Nginx 配置 请打开你的 Nginx 配置文件,例如 /etc/nginx/nginx.conf 或某个 conf.d/*.conf 文件中的 location 块,加入或调整以下内容: location /api/ { proxy_pass http://backend; # 以下是关键配置,必须加大 buffer 空间: proxy_buffer_size 128k; proxy_buffers 4 256k; proxy_busy_buffers_size 256k; proxy_temp_file_write_size 256k; # 可选,允许较大的响应头和体 client_max_body_size 10m; } 🔁 2. 重启或重载 Nginx nginx -t && nginx -s reload ✅ 额外说明 📌 为什么会截断? 虽然 base64 是放在 body 里,但: Nginx 会把整个后端响应(包括 body)先缓存在它自己的 proxy buffer 中; 如果 body 太大,而 Nginx 缓冲区太小,就会出现响应体被截断; 这时前端就拿不到完整的 base64 字符串。 🔍 如何确认已经解决? 后端原始返回长度(例如 40 KB) 前端 Network 面板中,点开该接口,确认 Response 是完整的 控制台或 可以正确显示二维码图片 本文由 admin 创作,采用 知识共享署名4.0 国际许可协议进行许可。本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。