<요약> 

 

1. Httpie 란

2. Httpie 사용법

3. 연습해보자. (example.com)


1. Httpie 란

CLI(command line interface)으로 동작하는 http client 이다.

 

다른 http client로는 웹 브라우저 , javascript등 있다. 

 

 

설치 방법

 

pip install --upgrade httpie

 

 

2. Httpie 사용법

 

httpie의 명령어는 http로 시작한다. 

http [flags] [METHOD] URL [ITEM[ITEM]]

 

  • flags : 옵션 
    - ex. json 형식으로 보낸다.  or html form형식으로 보내는 옵션
  • METHOD : HTTP METHOD
    - ex. POST, GET, DELETE , PUT ...
  • URL : 요청이나 응답의 대상 URL
     
  • ITEM : 처리할 값 (인자)   
    - PUT 혹은 POST에서 인자를 사용할 때는  = 로 표현
    - GET에서 인자를 사용할 때는 == 로 표현 
    - GET은 디폴트값이라 생략 가능 

 3. 연습해보자. 
 
(1) httpie 에서 GET 요청하기 ("보여줘" 요청)

이 도메인 URL 을 사용해서 GET요청을 연습해보겠다.

 

이 url은 example.com  

 

 

 우선  터미널을 열고 httpie를 설치한다.

pip install --upgrade httpie

 

잘 설치되었는지 확인하기 위해 다음 명령어를 입력해보자,. 

http

 

 

잘 설치했다면 이런 결과가 나옵니다. 

 

 

 

이제  위 URL 를 이용해서 httpi GET요청 해보자.

사용법은  위에서 말했듯http [flags] [METHOD] URL [ITEM[ITEM]] 이다. 

http [옵션없음] [get] "example.com" [인자없음]  이렇게 적자면 

http get "example.com"


라고 명령어를 치면 다음 결과가 나온다. 

 

실행 결과 

 

맨 위에 보면 200번대 응답을  받았고 
그외 정보를 받고
밑에 html 코드가 나오는 것을 알 수 있다. 

 

 

이번에 는밑에 나온  html 를 생략하는 옵션을 추가하고 GET 을 요청해보자. 

GET은 디폴트여서 생략가능하다. 

html코드는 뺴는 옵션은  --headers이다. 

 

 

http [--headers] [get(생략)] "example.com" [인자없음] 

http --headers "example.com"

라면 다음과 같이 html이 생략된  결과가 나온다. 

 

실행 결과 

 

(2) httpie 에서 PUT 요청하기 ("수정해죠" 요청)

 

사용법은  위에서 말했듯http [flags] [METHOD] URL [ITEM[ITEM]] 이다. 

 

http PUT example.com a==1 b=2

 

 

결과는 응답없음. timeout.. 

 

 

(3) httpie 에서 DELETE 요청하기 ("지워죠" 요청)

http [flags] [METHOD] URL [ITEM[ITEM]] 를 다음과 같이 적는다. 

http DELETE example.com a==1

 

 

결과는

405 ,, 400번대로 거절당했다

 

(4) httpie 에서 POST 요청하기 ("넣어줘" 요청)

 

- jSON 형식으로  

 

http --json POST example.com a==1 b=2

결과.

잉? 이게 왜 되는거지? 

 

 

- html form 형식으로

 

http --form POST example.com a==1 b=2

  

????

 

 

 

 

더 자세한 자료를 공부하고 싶으면 참고하면 좋을 자료다. 

https://httpie.org/

 

HTTPie – command line HTTP client

CLI HTTP that will make you smile. JSON support, syntax highlighting, wget-like downloads, extensions, and more.

httpie.org

 

'Django > REST Framwork' 카테고리의 다른 글

2. HTTP method  (0) 2019.12.14
1. JSON  (0) 2019.12.14

+ Recent posts