Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

특징

httpie 는 python 으로 개발된 콘솔용 http client 유틸리티로 curl 대신 http 개발 및 디버깅 용도로 사용 가능하며 다음과 같은 특징이 있다.

...

  1. pip 설치

    Code Block
    wget https://bootstrap.pypa.io/get-pip.py
    python get-pip.py
  2. httpie 설치

    Code Block
    pip install --upgrade httpie
    Info

    사용자 계정으로 설치하려면

기본 사용

Code Block
http [flags] [METHOD] URL [ITEM [ITEM]]
  • flags flags : 실행시 전달할 옵션으로  로 시작(Ex: --json)
  • METHOD : HTTP 메소드로 생략시 GET.
  • URL: 연결할 url

 http --help 를 실행하면 각 플래그별 상세한 설명을 볼 수 있음.

기본 연결

Code Block
 http  httpie.org

...

Code Block
http -v --follow http://httpieexample.org

--max-redirects=COUNT 옵션을 사용하면 최대 redirect 횟수를 지정할 수 있음.(기본값 30)

Code Block
http -v --max-redirects 5 --follow http://example.org

 

Content 제외하고 Header만 출력

서버의 HTTP Response 를 디버깅 해야 할 경우 컨텐츠는 거추장스러우므로  --headers(-h) 옵션을 사용하면 헤더 정보만 출력함.

Code Block
http --headers http://httpie.orgexample.org

 

download

wget 처럼 다운로드 프로그램으로 사용

Code Block
http --download example.org/file

 

SSL

SSL 인증서 검증 안 함

서버의 SSL 인증서에 문제가 있어서 HTTPS 통신에 문제가 있을 경우 --verify=no 옵션을 사용하면 인증서 검증 안함

Code Block
http --verify no http://httpie.org=no https://example.org

SSL CA 인증서 지정

CA 인증서가 없어서 검증 에러가 날 경우 --verify 옵션뒤에 CA 인증서 번들 파일을 지정하여 검증 가능(curl 에 신뢰하는 인증기관 인증서(CA Cert) 추가하기 참고)

Code Block
http --verify=/ssl/custom_ca_bundle https://example.org

 

SSL version

--ssl={ssl2.3,ssl3, tls1, tls1.1, tls1.2} 옵션으로 SSL 버전 지정

Code Block
http --ssl=ssl3 https://example.org

 

HTTP Method

Code Block
http DELETE example.org/todos/7

 

Json

Code Block
http PUT example.org name=John email=john@example.org

 

아래와 같이 JSON 요청으로 변환되서 전달

Panel
PUT / HTTP/1.1
Accept: application/json, */*
Accept-Encoding: gzip, deflate
Content-Type: application/json
Host: example.org

{
    "name": "John",
    "email": "john@example.org"
}

 

커스텀 Header 설정

커스텀 HTTP 헤더를 전송하려면 Header:Value 문법을 사용하면 됨:

...

Code Block
 http --auth-type=digest -a username:password example.org

 

같이보기

Ref

...