$ mkdir restAPI
$ cd restAPI
$ npm init -y
아래와 같이 나오게 된다.
$ npm install json-server
아래와 같이 설치가 된 것을 확인할 수 있다.
{
"todos": [
{
"id": 1,
"content": "HTML",
"completed": false
},
{
"id": 2,
"content": "CSS",
"completed": true
},
{
"id": 3,
"content": "Javascript",
"completed": false
},
{
"id": 4,
"content": "Python",
"completed": true
}
]
}
키와 밸류값이 각각 존재하는 형태로 이루어짐
package.json 수정하기(아래의 코드처럼 start 키 삽입)
{
"name": "restAPI",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node_modules/.bin/json-server --watch restAPI.json --port 8001"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"json-server": "^0.16.3"
}
}
node_modules/.bin/json-server --watch restAPI.json --port 8001
명령어를 쳐야하는데, 길고 복잡하기 때문에 단축어 느낌으로 저장을 해둔 것.npm start
라는 명령어를 통해 실행이 가능하다.$ npm start
http://localhost:8001/todos
해당 리소스로 넘어가보자.http://localhost:8001/todos/1
이렇게 id 값을 붙여주면 해당 id를 가진 값만 보여주는 페이지로 이동하게 된다.python requests
라이브러리를 사용할 예정이므로, pip를 사용해서 requests
를 설치할 것이기 때문에 우선 가상환경을 만들어준다.$ python3 -m venv venv
$ source venv/bin/activate
requests
라이브러리 설치$ pip3 install requests
$ pip list
restAPI_GET.py 라는 파일을 만든 후 아래의 코드를 넣어준다.
import requests
import json
url_item = "http://localhost:8001/todos"
response = requests.get(url_item)
print(response.text)
restAPI_POST.py 라는 파일을 만든 후 아래의 코드를 넣어준다.
import requests
import json
url_items="http://localhost:8001/todos"
new_item = {
"id": 5,
"content": "R",
"completed": False
}
response = requests.post(url_items, data=new_item)
print(response.text)
restAPI_PUT.py 라는 파일을 만든 후 아래의 코드를 넣어준다.
import requests
import json
url_items="http://localhost:8001/todos/4"
new_item = {
"id": 4,
"content": "CPP",
"completed": False
}
response = requests.put(url_items, data=new_item)
print(response.json())
이러면 json-server가 켜져있는 상태에서 아래와 같이 터미널 창에 뜨는 것을 확인할 수 있다.
response.json()
이나 response.text
나 사실상 같다.
restAPI_PATCH.py 라는 파일을 만든 후 아래의 코드를 넣어준다.
import requests
import json
url_items="http://localhost:8001/todos/4"
new_item = {
"id": 4,
"content": "CPP",
"completed": False
}
response = requests.put(url_items, data=new_item)
print(response.json())
restAPI_DELETE.py 라는 파일을 만든 후 아래의 코드를 넣어준다.
import requests
import json
url_items="http://localhost:8001/todos/4"
new_item = {
"id": 4,
"content": "CPP",
"completed": False
}
response = requests.put(url_items, data=new_item)
print(response.json())