:: python

python :: 파이썬 requests 로 REST API 호출하기

토람이 2021. 6. 21. 21:20

파이썬 requests 라이브러리를 사용하면

REST API를 호출하는 코드를 비교적 간단하게 작성할 수 있다.

 

import requests
import json

def send_api(path, method):
    API_HOST = "http://www.example.com"
    url = API_HOST + path
    headers = {'Content-Type': 'application/json', 'charset': 'UTF-8', 'Accept': '*/*'}
    body = {
        "key1": "value1":,
        "key2": "value2"
    }
    
    try:
        if method == 'GET':
            response = requests.get(url, headers=headers)
        elif method == 'POST':
            response = requests.post(url, headers=headers, data=json.dumps(body, ensure_ascii=False, indent="\t"))
        print("response status %r" % response.status_code)
        print("response text %r" % response.text)
    except Exception as ex:
        print(ex)
  

# 호출 예시
send_api("/test", "POST")

 

이렇게 method 에 따라 분기하는 send_api 함수를 만들어서 사용하면 편리하다.

(여기서는 가장 많이 쓰이는 GET 과 POST 만 작성해두었다.)

 

GET은 requests.get, POST는 requests.post 로 보낸다. (심플)

 

POST 요청의 경우 body 는 json data로 변환하여 보내는데

이 때 ensure_ascii=False, indent="\t" 등은 일반적으로 쓰이는 옵션들이다.

 

 

각각 필요한 header, body 를 넣고 위와 같은 형태로 작성하면 아마 잘 호출될 것이다.

실제로 이렇게 작성해서 잘 쓰고 있다 :D

 

 

 

광고 cIick은 토람코에 큰 힘이 됩니다 ♥

 
300x250