Narkdown ํ๋ก์ ํธ#
notion-py ๋ฅผ ์ฌ์ฉํด์ Python ๊ธฐ๋ฐ์ผ๋ก์งํํ์์ง๋ง Python์ ์ ์ฌ์ฉํ์ง ์๋ค๋ณด๋ ์ ์ง ๋ณด์ํ๊ธฐ ํ๋ค์๋ค.
ts๊ธฐ๋ฐ notion-api-worker ๊ฐ ์์ด์ ์ด๋ฅผ ์ฌ์ฉํ๋ ค๊ณ ํ๋ค.
๋ชฉํ#
CLI๋ก page url ๋๋ database url์ ์ ๋ ฅ ๋ฐ๊ณ notion์ ์ปจํ ์ธ ๋ฅผ ํ์ฑํ์ฌ md ํ์ผ์ ์์ฑํ์. (CMS๋ฅผ ์ํด)
์ดํ ์น ํ์ด์ง๋ฅผ ๋ง๋ค ์ ์์ผ๋ฉด ์ข์ ๋ฏ.
fetch vs axios#
ํ๋ก ํธ์๋์์ fetch, axios๋ ์์ฃผ ์ฌ์ฉํ๋๋ฐ, node ํ๊ฒฝ์์ api ์์ฒญ์ ํด๋ณด๋๊ฒ์ ์ฒ์์ด๋ผ, ์ด๋ค ๊ฒ์ ์ฌ์ฉํ ์ง ๊ณ ๋ฏผํ๋ค.
axios๋ node ํ๊ฒฝ์์๋ ๋์ผํ๊ฒ ์ฌ์ฉํ๋ ๊ฒ์ด ๊ฐ๋ฅํ๋ค.
fetch๋ node-fetch ๋ผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค. ์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ NodeJS ๋ฐํ์ ํ๊ฒฝ์์
window.fetch๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํ ์ต์ํ์ ์ฝ๋๋ฅผ ๋ชฉํ๋ก ํ๋ค๊ณ ํ๋ค.ํ๋ก ํธ์๋ ํ๊ฒฝ์์ fetch ๊ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ค์น ์์ด ์ฌ์ฉํ ์ ์๋๊ฒ ์ฅ์ ์ด๋ผ๊ณ ์๊ฐํ๋๋ฐ, ๊ตณ์ด node-fetch๋ฅผ ์ฌ์ฉํ ํ์๋ ์์ ๊ฒ ๊ฐ์์, axios๋ฅผ ์ฌ์ฉํ๊ธฐ๋ก๊ฒฐ์ ํ๋ค. (๋ณด์์ ์ธ ์ต์ ๋ axios๊ฐ ๋ง์ด ์ ๊ณตํ๋ค.)
https://www.geeksforgeeks.org/difference-between-fetch-and-axios-js-for-making-http-requests/
ts-node#
tsconfig์์ฑ ๋ช ๋ น์ด
tsc --inittsconfig์ต์ ์ ๋ฆฌ
8 Best Practices for Future-Proofing Your TypeScript Code
tsconfig ์ปดํ์ผ ์ต์ ์ ๋ฆฌ
[TS / Node] TS + Node.js + Express + Babel(option) + eslint๋ก ๊ฐ๋ฐํ๊ฒฝ ์ธํ ํ๊ธฐ
notion-api-worker#
get page ๋ฆฌํด
๊ธฐ๋ณธ ํ์ด์ง
Database ํ์ ํ์ด์ง
๋ฉํ๋ฐ์ดํฐ๊ฐ ์๋ ํ์ด์ง
get table ๋ฆฌํด
table๋ก ๋ ํ์ด์ง
blocks
Accept vs Content-Type#
Accept : ํด๋ผ์ด์ธํธ๊ฐ ๋ฐ์ ์ ์๋ ์๋ต ํ์์ ์ง์ ํจ.
Content-Type : ํด๋ผ์ด์ธํธ๊ฐ ๋ณด๋ด๋ ์ฝํ ์ธ ์ ํ์