Значение SpringBoot Postman @RequestMapping = «getImage/{imageName:. }»

#java #spring-boot

#java #весенняя загрузка

Вопрос:

введите описание изображения здесьЯ создаю конечную точку с помощью spring boot … я могу загрузить изображение в папку и сохранить его через postman, все работает хорошо. у меня проблема с методом get, когда я добавляю значение @RequestMapping value = «getImage /{imageName:. }» в postman я добавляю http://localhost:8080/api/images/getImage /{burger png} это корект???

 @RequestMapping(value = "api/images")
public class ImageController {

    @Autowired
    public ImageService imageService;
    @PostMapping(value ="upload")
    public ResponseEntity uploadImage(@RequestParam MultipartFile     file){
        return this.imageService.uploadToLocalFileSystem(file);
    }
    @GetMapping(
            value = "getImage/{imageName:. }",
            produces = {MediaType.IMAGE_JPEG_VALUE,MediaType.IMAGE_GIF_VALUE,MediaType.IMAGE_PNG_VALUE}
    )
    public @ResponseBody byte[] getImageWithMediaType(@PathVariable(name = "imageName") String fileName) throws IOException {
        return this.imageService.getImageWithMediaType(fileName);
    }
}
 

каким должен быть правильный URL-адрес запроса???

Ответ №1:

Похоже, что он нормально достигает серверной части, но не может найти путь. Обычно конечные точки API заканчиваются параметрами с задержкой или параметром запроса. Вы можете попробовать любое из следующих действий, чтобы убедиться, что это работает:

 http://localhost:8080/api/images/getImage/burger.png

http://localhost:8080/api/images/getImage?imageName=burger.png
 

Имейте в виду, вы хотите убедиться, что файл существует по пути, который он упоминает в самом начале trace ответа JSON. Это может зависеть от того, как вы загрузили файл и с каким именем.

Комментарии:

1. localhost:8080/api/images/getImage/burger.png С этим все работало нормально … несколько раз, если вы много работаете со стеком: P