본문 바로가기
Development

[Info] JSONPlaceholder REST API 사용기

by 선인장 🌵 2023. 2. 13.
728x90
728x90

JSONPlaceholder REST API 사용기

개발을 진행하다 보면 Json Type REST API를 연계해서 테스트등을 진행해야 하는 경우가 있다. 

물론 이미 사용하는 REST API가 있거나 한다면 그것을 이용해서 하면 되겠지만 개발을 하다 보면 그렇지 않은 경우도 있을 수 있다.

테스트 혹은 프로토타입의 Code를 개발하는 경우도 있기 때문이다. 

이런 경우 번거롭게 또 REST API를 만들기 보다면 Fake Data를 제공하는 JSONPlaceholder REST API를 이용해 보면 좋을 것 같다. 

그럼 JSONPlaceholder는 어떤 건지 간단히 알아보도록 하자.

[Info] JSONPlaceholder REST API 사용기

728x90

1. JSONPlaceholder 이란?

JSON Placeholder는 테스트 및 프로토타입을 위한 샘플 데이터를 제공하는 무료 온라인 REST API 서비스이다.

게시물, 댓글, 앨범, 사진 등 실제 백엔드를 설정하지 않고도 애플리케이션을 테스트하는 데 사용할 수 있는 Fake 데이터를 제공한다.

JSON Placeholder는 실제 데이터를 생성하거나 라이브 API에 의존할 필요 없이 응용 프로그램의 기능을 테스트하고자 하는 사람에게 매우 유용한 무료 서비스가 될 것이다.

JSON Placeholder의 장점 중 하나는 빠르고 사용하기 쉽다는 것이다.

공식 페이지에서 문서화도 잘 되어 있어 어느 언어를 사용하든 사용하기 쉽다는 것이다.

 

JSONPlaceholder - Guide

Guide Below you'll find examples using Fetch API but you can JSONPlaceholder with any other language. You can copy paste the code in your browser console to quickly test JSONPlaceholder. Getting a resource fetch('https://jsonplaceholder.typicode.com/posts/

jsonplaceholder.typicode.com

728x90

GET 요청을 보내면 Fake 데이터가 Json Type을 반환되며, 해당 REST API는 여러 유형의 Fake 데이터를 제공하는 다양한 EndPoint를 지원한다.

지원하는 Method는 GET, POST, PUT, PATCH, DELETE를 사용할 수 있다.

또한, 아래와 같이 6가지의 유형을 사용할 수 있다.

  • Post
  • Comment
  • Albums
  • Photo
  • Todos
  • Users

2. 샘플 Code

샘플 Code는 Python을 기반으로 간단하게 작성하였다.

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import requests


def get_post():
    url = "https://jsonplaceholder.typicode.com/posts"

    response = requests.get(url)

    if response.status_code == 200:
        posts = response.json()
        for post in posts:
            print("Post id: ", post["id"])
            print("Post title: ", post["title"])
            print("Post body: ", post["body"])
            print("\n")
    else:
        print("Request failed with status code: ", response.status_code)
        

if __name__ == "__main__":
    get_post()
728x90
728x90


🌵댓글

 

loading