ํ๊ต์๋จ API, ํ๊ต์ ๋ณด API๋ 2023๋ 8์ 1์ผ๋ถ๋ก ์ข ๋ฃ๋ฉ๋๋ค.
๋์ฑ ์ ํํ ์ ๋ณด๋ฅผ ๋ณด์ฅํ๋ ๋์ด์ค ๊ต์ก์ ๋ณด ๊ฐ๋ฐฉํฌํธ ์ฌ์ฉ์ ๊ถ์ฅํฉ๋๋ค.
HTTP GET ์์ฒญ์ ํตํด ํ๊ต ์๋จ์ JSON์ผ๋ก ๋ฐ์ ์ด๋ค ํ๋ซํผ์์๋ ์ฝ๊ฒ ๋ถ๋ฌ์ฌ ์ ์์ต๋๋ค. school-api ํ๋ก์ ํธ๊ฐ ์ ์์ ํฐ ๋์์ด ๋์์ต๋๋ค.
์๋จ์ ํ ๋ฒ ์ด์ ์์ฒญ ์ ์์ฒญํ ํ๊ต, ๋ , ์๋ณ๋ก ์๋จ์ด ์๋ฒ์ ์ ์ฅ๋์ด ์๋ต ์๋๊ฐ ๋ํญ ๊ฐ์ ๋ฉ๋๋ค.
์ด๋ฑํ๊ต, ์คํ๊ต, ๊ณ ๋ฑํ๊ต๋ฅผ ์ง์ํฉ๋๋ค.
- ์ด๋ฑํ๊ต:
elementary
- ์คํ๊ต:
middle
- ๊ณ ๋ฑํ๊ต:
high
์ฌ๊ธฐ์์ ํ๊ต ์ฝ๋๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
https://school-api.xyz/api/[ํ๊ต์ ํ]/[ํ๊ต์ฝ๋]
๋ก ํ์ฌ ๋ฌ์ ์๋จ์ ๋ถ๋ฌ์ฌ ์ ์์ต๋๋ค. ์๋ต ๋ฐ์ดํฐ๋ JSON ์
๋๋ค.
๋ค์๊ณผ ๊ฐ์ด ์ฃผ์ ๋์ ๋ณ์๋ช ๊ณผ ๊ฐ์ ์ ์ด ์ฌ์ฉํฉ๋๋ค.
https://school-api.xyz/api/[ํ๊ต์ ํ]/[ํ๊ต์ฝ๋]?[๋ณ์๋ช
1]=[๊ฐ1]&[๋ณ์๋ช
2]=[๊ฐ2]
๋ณ์๋ช | ์ค๋ช | ๊ธฐ๋ณธ๊ฐ |
---|---|---|
year | ํน์ ํ ๋ ๋๋ฅผ ์ง์ ํ์ฌ ํด๋น ๋ ๋์ ํด๋นํ๋ ์๋จ์ ๋ถ๋ฌ์ต๋๋ค. | ํ์ฌ ๋ ์ง์ ์ฐ๋ |
month | ํน์ ํ ๋ฌ์ ์ง์ ํ์ฌ ํด๋น ๋ฌ์ ํด๋นํ๋ ์๋จ์ ๋ถ๋ฌ์ต๋๋ค. | ํ์ฌ ๋ ์ง์ ์ |
date | ํน์ ํ ์ผ์ ์ง์ ํ์ฌ ํด๋น ๋ ์ง์ ํด๋นํ๋ ์๋จ์ ๋ถ๋ฌ์ต๋๋ค. | ํ์ฌ ๋ ์ง์ ์ผ |
allergy | hidden ์ผ๋ก ์ค์ ํ๋ฉด ์๋ ๋ฅด๊ธฐ ์ ๋ณด๊ฐ ํ์๋์ง ์์ผ๋ฉฐ, formed ๋ก ์ค์ ํ๋ฉด ์ ๋ณด๊ฐ ๊ตฌ์กฐํ๋์ด ํ์๋ฉ๋๋ค. |
์์ |
Node.js
const request = require('request');
const url = 'https://school-api.xyz/api/high/X123456789?date=23';
request(url, (err, res, body) => {
var json = JSON.parse(body);
console.log(json);
});
Python
import requests
import json
url = 'https://school-api.xyz/api/middle/X123456789?year=2018&month=5'
response = requests.get(url)
school_menu = json.loads(response.text)
print(school_menu)
{
menu: [
...,
{
date:"5",
breakfast:["์ฐน์๋ฐฅ","ํํฉ๋ฏธ์ญ๊ตญ5.6.","๋ญ๊ฐ๋น5.6.13.","๊น๊ตฌ์ด13.","๋ฐฐ์ถ๊น์น9.13.","๋ฐฉ์ธํ ๋งํ 12."],
lunch:["ํ๋ฏธ๋ฐฅ","์ฝฉ๋๋ฌผ๊ตญ5.13.","๋ผ์ง๋ฑ๋ผ๊น์น์ฐ9.10.13.","๋ํ ๋ฆฌ๋ฌต๋ฌด์นจ5.6.13.","์ด๊ฐ๊น์น9.13.","์ฒญํฌ๋"],
dinner:["์ฐน์๋ฐฅ","์ค์ง์ด์งฌ๋ฝ๊ตญ5.6.","๋ฐฐ์ถ๊ฒ์ ์ด13.","ํฌ๋์ฅฌ์ค5.13.","๋ง๋์ค๊ผฌ๋
ธ๋ฏธ์ผ๋ผ1.5.6.10.12.13."]
},
...
],
server_message: ["foo", "bar", ...]
}
์ค๋น์ฌํญ
- Node.js 16
- Firebase CLI
- Firebase Console์์ ์์ฑํ ํ๋ก์ ํธ
ํ๋ก์ ํธ ๋ฃจํธ์ ์์นํ .firebaserc
ํ์ผ์์ firebase project id๋ฅผ ์์ ํ ํ, ๋ค์๊ณผ ๊ฐ์ด ๋ช
๋ น์ด๋ฅผ ์คํํ๋ฉด ๋ฐฐํฌํ ์ ์์ต๋๋ค.
firebase deploy
ํด๋น ํ๋ก์ ํธ๋ MIT ๋ผ์ด์ ์ค ํ์ ๋ฐฐํฌ๋๋ฉฐ, ์์ , ๋ณต์ , 2์ฐจ ์ฐฝ์, ์๋ฆฌ์ ์ฌ์ฉ, ๋ค๋ฅธ ๋ผ์ด์ ์ค ํ์ ์ฌ๋ฐฐํฌ ๋ฑ์ด ๊ฐ๋ฅํฉ๋๋ค. ๋ค๋ง ํด๋น ํ๋ก์ ํธ์ ๊ด๋ จ๋ ํผํด์ ๋ํด ์ฑ ์์ง์ง ์์ต๋๋ค.