Я работаю над проектом с угловым интерфейсом и бэкендом Springboot 2.1.2 и реализовал способ загрузки изображений.Однако он работает только в том случае, если размер изображения <1 МБ, большие изображения вызывают исключение: </p>
org.apache.tomcat.util.http.fileupload.FileUploadBase $ FileSizeLimitExceededException: изображение поля превышает максимально допустимый размер1048576 байт
Я уже просмотрел этот вопрос: Я пытаюсь установить maxFileSize, но это не соблюдается Ограничение размера файла загрузки Spring
Я попытался добавить
spring.servlet.multipart.max-File-Size: 30MB
spring.servlet.multipart.max-Request-Size: 30MB
, и когда это не сработало также
spring.servlet.multipart.maxFileSize: 30MB
spring.servlet.multipart.maxRequestSize: 30MB
в мой application.yml, нииз которых, казалось, ничего не делал.
Я также нашел это: https://www.baeldung.com/spring-maxuploadsizeexceeded
и попытался установить предел, как описано в пункте 2 этого сайта.
Ничего из этогосделал свое дело.Есть идеи, что я делаю не так?Вот мой application.yml:
logging:
file: ./log/backend.log
level.: WARN
banner:
location: banner/banner.txt
server:
context-path: /
spring:
application:
name: Backend
jpa:
hibernate:
ddl-auto: validate
use-new-id-generator-mappings: true
profiles:
active: development
http:
multipart:
maxFileSize: 30MB
maxRequestSize: 30MB
security:
basic:
enabled: false
management:
info:
git:
mode: full
Вот мой контроллер:
@RestController
@RequestMapping(value = "/api/v1/image")
@Api(value = "Image")
public class ImageEndpoint {
@Autowired
private ImageMapper imageMapper;
@Autowired
private IImageService imageService;
@RequestMapping(method = RequestMethod.POST)
@PreAuthorize("hasRole('ADMIN')")
@ApiOperation(value = "Upload a new image", authorizations = {@Authorization(value = "apiKey")})
@ResponseStatus(HttpStatus.OK)
public @ResponseHeader Long post(@RequestParam ("image") MultipartFile input){
try {
return imageService.save(imageMapper.dtoToEntitiy(new ImageDto(input.getBytes())));
}catch (IOException io){
throw new ResponseStatusException(HttpStatus.BAD_REQUEST);
}
}
Обновление:
servlet:
multipart:
max-request-size: 30MB
max-file-size: 30MB
это сделаноработать, я просто перекомпилировал после добавления его вначале, чтобы изменения не проходили, мне просто пришлось пересобрать, чтобы он заработал.