美文网首页
解决思路:通过Zuul上传文件接口无返回值的问题

解决思路:通过Zuul上传文件接口无返回值的问题

作者: 九里 | 来源:发表于2022-02-09 15:15 被阅读0次

项目由多个微服务组成,通过Zuul进行API接口的网关转发。项目上线后正常运行,但运行一段时间后偶尔会出现文件上传接口返回值为空的问题。接口的状态为200,但通过浏览器调试发现response为空(因此断定为Zuul层面错误)。
考虑的解决问题的方向:

1. 文件过大导致上传失败?

Zuul上传文件 - 沟渠映明月 - 博客园 (cnblogs.com)
Spring boot默认的文件上传大小限制为1MB,但是即使修改之后依然无法解决问题

2. zuul的临时文件目录被定时清理导致

这个问题可以通过为server.tomcat.basedir设置一个指定的目录来解决
SpringBoot文件上传异常之提示The temporary upload location xxx is not valid
这个方法部分解决了问题,加上此配置后出现报错的概率小了,但依然会出现问题

3. Zuul过滤了HTTP的header导致后端无数据?

zuul 巨坑 跨域 请求 正常 但没有返回 结果_自由の力-CSDN博客](https://blog.csdn.net/taoli1986/article/details/95787546)
加上配置后无效果。

解决问题中的发现

在Spring boot 2.0中spring.servlet.http.multipart被替换为了spring.servlet.multipart,请注意Spring boot的版本问题。
java - How exactly spring.http.multipart.enabled is different from spring.servlet.multipart.enabled? - Stack Overflow

Zuul网关 @EnableZuulProxy 和 @EnableZuulServer 的区别

Spring Boot Reference Guide

相关文章

网友评论

      本文标题:解决思路:通过Zuul上传文件接口无返回值的问题

      本文链接:https://www.haomeiwen.com/subject/uqvwkrtx.html