IT/development

[devTool] postman์œผ๋กœ ํŒŒ์ผ ์ „์†ก ํ…Œ์ŠคํŠธ

์•Œ ์ˆ˜ ์—†๋Š” ์‚ฌ์šฉ์ž 2023. 1. 30.

postman์œผ๋กœ ํŒŒ์ผ ์ „์†ก ํ…Œ์ŠคํŠธ(Rest API) ๐Ÿ˜„

postman์„ ์ด์šฉํ•ด์„œ ์Šคํ”„๋ง ํŒŒ์ผ ์—…๋กœ๋“œ ํ…Œ์ŠคํŠธํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ๊ฒŒ๋˜์–ด ๊ธฐ๋กํ•œ๋‹ค.

๊ทธ๋™์•ˆ์€ html์œผ๋กœ form์„ ๋งŒ๋“ค์–ด์„œ ํ–ˆ์—ˆ๋Š”๋ฐ.. ๐Ÿ˜‚

๋ฐฉ๋ฒ•์€ ์•„์ฃผ ์‰ฝ๋‹ค. 

๋‹น์—ฐํžˆ ์ „์†ก๋ฐฉ์‹์€ POST๋กœ ์„ ํƒ

Body > form-data > key > File๋กœ ์„ ํƒ > value์— Select Files ์„ ํƒ ์‹œ ํŒŒ์ผ ์—…๋กœ๋“œ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.

์‹ค์ œ๋กœ ์„œ๋ฒ„์—์„œ ์ž˜ ๋ฐ›์•„์ง€๋Š”์ง€ ํ…Œ์ŠคํŠธ๋ฅผ ํ•ด๋ณด๊ฒ ๋‹ค.

์ปจํŠธ๋กค๋Ÿฌ ์ƒ์„ฑ ํ›„ ๋กœ๊ทธ๋ฅผ ์ฐ์–ด์„œ ์ž˜ ๋“ค์–ด์˜ค๋Š”์ง€๋งŒ ํ™•์ธ ํ•ด๋ณด๊ฒ ๋‹ค.

controller

package study.lsyrestapitest1.controller.api;

import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;

@RestController
@Slf4j
@RequiredArgsConstructor
@RequestMapping(value = "/v1/file")
public class FileController {

    @PostMapping(value = "upload")
    public Object upload(@RequestParam(value = "file") MultipartFile file) throws Exception {

        log.info("file => {}", file.getOriginalFilename());
        return "์„ฑ๊ณต์ด๋‹ค.";
    }
}

ํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ

์ปจํŠธ๋กค๋Ÿฌ์—์„œ ํŒŒ์ผ ์ด๋ฆ„๋งŒ ์ฐ์–ด๋ดค๋Š”๋ฐ ์ž˜ ์ฐํžŒ๋‹ค.

postman์—์„œ ์„œ๋ฒ„๋กœ ํŒŒ์ผ ์ „์†ก์ด ์ฃผ ๋ชฉ์ ์ด๋ผ ์‹ค์ œ ํŒŒ์ผ ์—…๋กœ๋“œ ๋กœ์ง์€ ์ƒ๋žตํ–ˆ๋‹ค.

postman์„ ์ด์šฉํ•ด์„œ ํŒŒ์ผ ์—…๋กœ๋“œ ํ…Œ์ŠคํŠธ๋ฅผ ํ•˜๋ฉด html ํ™”๋ฉด์„ ์ง์ ‘ ๋งŒ๋“œ๋Š” ๋ฒˆ๊ฑฐ๋กœ์›€์„ ์ค„์ผ ์ˆ˜ ์žˆ๊ฒ ๋‹ค.

๋Œ“๊ธ€