티스토리 뷰
Linux
[Linux] curl 보다 편리한 HTTPie(Command Line HTTP Client) 설치방법 및 기본 사용법
Jane Kwon 2021. 11. 23. 19:03반응형
터미널에서 curl 대신 HTTPie를 이용하면 API 테스트를 보다 쉽게 할 수 있다.
설치 방법 (macOS 기준)
사전 작업으로 brew 설치가 필요하다.
% brew update
% brew install httpie
기본 사용법 (curl과 비교)
명령어 만으로도 http와 https로 구분하여 호출이 가능하다
% curl http://janes.shop
% curl https://janes.shop
% http janes.shop
% https janes.shop
Headers 설정은 url 뒤에 key:value 형태로 붙이면 된다.
% curl -i -H "x-api-key:g54RfVnN2LX947pcgXnA4fc86WEZFDSGVIH6l" janes.shop/user/list
% https GET janes.shop/user/list x-api-key:g54RfVnN2LX947pcgXnA4fc86WEZFDSGVIH6l
query string으로 데이터를 넘기거나 body에 데이터를 넘겨야할 때는 url 뒤에 key==value 형태로 붙이면 된다.
% curl -i -G -d "username=jane" -H "x-api-key: g54RfVnN2LX947pcgXnA4fc86WEZFDSGVIH6l" https://janes.shop/user/details
% https janes.shop/user/details username==jane x-api-key:g54RfVnN2LX947pcgXnA4fc86WEZFDSGVIH6l
응답
% curl -i -G -d "username=jane" -H "x-api-key: g54RfVnN2LX947pcgXnA4fc86WEZFDSGVIH6l" https://janes.shop/user/details
HTTP/2 200
date: Tue, 23 Nov 2021 09:48:52 GMT
content-type: application/json
content-length: 458
x-amzn-requestid: g56hf145-f4gb-k90k-a778-0kj8ff31c58d
x-amzn-remapped-connection: keep-alive
x-amz-apigw-id: TQW2xFsgIE0Df9B=
x-amzn-trace-id: Root=1-842cb904-15ac08c02l99d6b369905b4d
x-amzn-remapped-date: Tue, 23 Nov 2021 09:48:52 GMT
{"code":"OK","message":"Done","timestamp":1637660932776,"data":{"lastName":"Kwon","displayName":"Jane Kwon","firstName":"Jane","id":"6783","state":"ACTIVATED","username":"jane"}}%
% https janes.shop/user/details username==jane x-api-key:g54RfVnN2LX947pcgXnA4fc86WEZFDSGVIH6l
HTTP/1.1 200 OK
Connection: keep-alive
Content-Length: 458
Content-Type: application/json
Date: Tue, 23 Nov 2021 09:48:52 GMT
X-Amzn-Trace-Id: Root=1-842cb904-15ac08c02l99d6b369905b4d
x-amz-apigw-id: TQW2xFsgIE0Df9B=
x-amzn-Remapped-Connection: keep-alive
x-amzn-Remapped-Date: Tue, 23 Nov 2021 09:48:52 GMT
x-amzn-RequestId: g56hf145-f4gb-k90k-a778-0kj8ff31c58d
{
"code": "OK",
"data": {
"lastName": "Kwon",
"displayName": "Jane Kwon",
"firstName": "Jane",
"id": "6783",
"state": "ACTIVATED",
"username": "jane"
},
"message": "Done",
"timestamp": 1637660932776
}
당연히 key와 value는 작성을 위한 가짜 값이다.
(참고 : https://httpie.io/docs)
반응형
'Linux' 카테고리의 다른 글
[Linux] logrotate 설정 (0) | 2022.08.23 |
---|---|
[Linux] Bash Shell에 인자 전달하여 실행 (1) | 2022.03.04 |
[Linux] tar 파일, tar.gz 파일 압축 / 압축 해제 (0) | 2021.11.17 |
[Linux] scp를 이용하여 로컬-서버 간 파일 전송 (0) | 2021.11.17 |
[Linux] WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! (0) | 2021.02.09 |