관리 메뉴

너와 나의 스토리

httpie 설치 및 사용 / REST API 호출과 JSON format 데이터를 파싱해 활용할 수 있는 parser 코드 만들기 본문

개발

httpie 설치 및 사용 / REST API 호출과 JSON format 데이터를 파싱해 활용할 수 있는 parser 코드 만들기

노는게제일좋아! 2019. 9. 20. 12:42
반응형

Parsing & Parser

Parsing

  • 컴퓨터 과학에서 parsing은 일련의 문자열을 의미있는 token(어휘 분석의 단위)으로 분해하고 그것들로 이루어진 Parse tree를 만드는 과정
  • 어떤 문장을 분석하거나 문법적 관계를 해석하는 행위

Parser

  • 컴퓨팅에서 parse는 interpreter나 compiler의 구성 요소 가운데 하나로 입력 token에 내재된 자료 구조를 빌드하고 문법을 검사한다.
  • Parser: parsing을 하는 processor이며 compiler나 interpreter에서 원시 프로그램을 읽어 들여 그 문장의 구조를 알아내는 parsing을 하는 프로그램

 

httpie

  • python으로 개발된 콘솔용 http client
  • curl보다 사용 쉬움
  • form과 file 업로드 쉬움
  • HTTP 인증 및 커스텀 헤더 설정

 

httpie 설치

 

pip install --upgrade httpie

만약 pip가 설치되어 있지 않다면, pip부터 설치해준다

python get-pip.py

 

그 외의 httpie에 대한 설명 - https://www.lesstif.com/pages/viewpage.action?pageId=28606741

 

 

 

SWAPI

터미널을 열고 curl 또는 httpie를 사용하여 resource에 대한 API 요청을 하자(나는 httpie를 사용).

첫번째 행성인 Tatoonie를 얻어보자!

http swapi.co/api/planets/1/

우리는 예제에 httpie를 사용하여 응답을 표시하고 훨씬 더 유용한 정보를 제공한다. 

 

우리가 얻은 응답

위 화면이랑 다르게 나올 수도 있음. 데이터 추가되고 그래서 그런거

 

Base URL

API 전체를 위한 root URL이다.

만약 swapi를 요청한 후 404 NOT FOUND 응답을 받으면 기본 URL을 먼저 확인해보세요.

 

Base URL for swapi:

https://swapi.co/api

요청을 하기 위해 엔드 포인트 앞에 기본 URL을 추가한다고 가정한다.

 

 

HTTP Methods 

  • Get
http https://nghttp2.org/httpbin/get

 

Returns a simple JSON document

 

* JSON.parse()

  • JSON string 표현을 javaScript 값(JSON object)으로 변환한다. 
  • syntax: JSON.parse(text[, reviver])
  • 예제:
var jsonString ='{ "foo" : 1}';
var obj = JSON.parse(jsonString);

var obj =JSON.parse('{"x": 5,"y":6}');

//output 
{foo:1}
{x:5, y:6}

 

 

 

출처: https://swapi.co/documentation

출처: https://nghttp2.org/httpbin/#/Dynamic_data/get_base64__value_

출처: https://restfulapi.net/json-parse/

반응형
Comments