问题

最近在调用一个上传文件的接口时,发现接口调用响应状态码为413,并且控制台显示跨域错误信息。查找了相关信息,得知 413 状态码表示请求的包体过大导致的。

出现这种情况,我想到了2种解决方案: 1) 调整上传文件的方式 2) 调整网关的参数。

综合目前的现况,采取了第二种方式调整网关客户端请求体最大值的参数。

解决

通过查阅 nginx ingress 的文档, 得知可以添加 nginx.ingress.kubernetes.io/proxy-body-size 注解来设置请求体的最大值, 设置 nginx.ingress.kubernetes.io/proxy-body-size 值为合适的值后,再请求接口发现接口顺利响应。

img.png

小结

本文介绍了客户端请求接口时,由于 nginx 默认 proxy-body-size 参数太小, 导致请求413 的问题及相应的解决方案。

参考