Intellij webClient(http Client) plugin 사용법

Intellij httpClient plugin을 이용해 http requset 만들어보기

postman을 사용하지 않고 request를 만들고, response를 확인해봅니다.


Goal

  • 인텔리제이에서 지원하는 .http 를 이용해 http 요청을 보내고 응답을 콘솔에서 확인해봅니다.
  • POST시 json 파일도 요청에 넣어서 보내봅니다.

요청용 스크립트 파일 생성

image

  • 우측을 클릭해서 Http Request를 만들어봅니다.

스크립트 내용 입력

image

image

  • 위와같이 HTTP 메소드 이름과, 요청을 적어주고 반드시 어플리케이션을 실행한뒤 초록색 화살표를 눌러 주면 요청이 보내지고, 요청에 따른 응답을 받을 수 있게됩니다.
  • Json 타입을 보내고 싶다면 Content-Type 역시 설정이 가능하고, 이외 다른 쿠키와 같은 값들도 넣어줄 수 있습니다.

Post

with body

image

  • POST 단맨 아래의 <.member.json 의 경우 해당 json파일을 POST요청에 넣는다는것을 의미합니다.
  • member.json 에는 올바른 json 타입의 정보를 적어주면 됩니다.

image

  • 파일로 따로 분리할 필요성이 느껴지지 않는다면, 작성한 요청 밑에 바로 적어주어도 요청생성이 가능합니다.

파일업로드

/Users/yoonsung/file-test/test.csv 파일을 업로드 하는 상황

1
2
3
4
5
6
7
8
9
### file upload
POST {컨트롤러 URL}
Content-Type: multipart/form-data; boundary=boundary

--boundary
Content-Disposition: form-data; name="file"; filename={"파일이름"}

< 업로드할 파일경로
--boundary--

예시

1
2
3
4
5
6
7
8
9
### file upload
POST http://localhost:8080/api/v1/file/testfile1
Content-Type: multipart/form-data; boundary=boundary

--boundary
Content-Disposition: form-data; name="file"; filename="test.csv"

< /Users/yoonsung/file-test/test.csv
--boundary--

원클릭 Request 자동생성

image

image

  • 컨트롤러단에서 Open in HTTP Client를 클릭해 요청메시지를 자동으로 생성하는 방법도 있습니다.
  • `` 처럼 파라미터 같은것은 완벽하게 생성이 안되므로 약간의 수정을 진행해주면 됩니다.

Conclusion

  • 기존 PostMan을 통해서 작업을 IntelliJ 에서 제공하는 httpClient plugin 을 이용해 간편하게 HTTP 요청을 보내고 응답을 받아볼 수 있다.

Reference

  • https://www.jetbrains.com/help/idea/http-client-in-product-code-editor.html#converting-curl-requests
  • https://jojoldu.tistory.com/266
  • https://stackoverflow.com/questions/34384650/intellij-idea-rest-client-file-uploading