Web APIsμ κΈ°λ³Έ
λλΆλΆ RESTμ νΉμ§μ http νλ‘ν μ½κ³Ό νμ€νλ λ°©μλ§ μ λ°λΌκ°λ©΄, μμμ λ°λΌμ€λ μ΄μ μ΄ μκ³ , hypermedia νΉμ§μ μν€ν μ²λ₯Ό μμ±νκΈ°κ° μ΄λ ΅κ³ κ·Έλ κ² νλ κ³³μ λ§μ§ μλ€.
web APIλ₯Ό λμμΈν λλ μλ²μ μλ νΉμ ν λ°μ΄ν°λ₯Ό ν΄λΌμ΄μΈνΈκ° μ½κ±°λ λ§λ€κ±°λ μ λ°μ΄νΈνκ±°λ μμ νλ κΈ°λ³Έμ μΈ λμμ μ§μν΄μ£Όλ©΄ λλ€. (CRUD)
μ΄λ₯Ό HTTP λ©μλμ λΉμ ν΄λ³΄λ©΄ μλ κ·Έλ¦Όκ³Ό κ°λ€
μ£Όμν μ¬ν
- API μ΄λ¦μλ μ‘μ
(λ©μλ)μ λν λ΄μ©μ μλ΅ν΄μΌνλ€.
- GET /posts/getPosts (π«)
- GET /posts (β )
- url μ΄λ¦κ³Ό μ‘μ
(λ©μλ)κ° ν΄λ¦¬μ΄ ν΄μΌνλ€.
- GET /posts/createPost (GET λ©μλμ§λ§, ν¬μ€ν μ μμ±ν¨ / λ©μλμ λν μ λ³΄κ° urlμ μ‘΄μ¬)(π«)
- POST /posts (β )
- PUT /posts/1 (μμ΄λ 1λ² λ¦¬μμ€ μ λ°μ΄νΈ)(β )
- DELETE /posts/1 (1λ² λ¦¬μμ€ μμ )(β )
- μμ²νλ κΆκ·Ήμ μΌλ‘ κ°μ Έμ€λ €κ³ νλ κ²μ λͺ
νν΄μΌνλ€.
- GET /posts/1/tags (π«)
- GET /tags/?postId=1 (β )
- GET /tags/?query=cool (β )
Youtube μ API μ°Έκ³
https://developers.google.com/youtube/v3/docs/videos/list
Youtube APIλ₯Ό νμΈνλ©΄, λͺ¨λ μ¬μ©κ°λ₯ν Hypermedia λ§ν¬κ° api μλ΅μ λ€μ΄κ°μμ§μμ κ²μ νμΈν μ μλ€. REST νΉμ§ μ€ Hypermedia λ£°μ λ°λ₯΄μ§ μλ κ²μ΄ μΌλ°μ μ΄λ€.
REST APIμ μμΉμ μΆ©μ€ν λ°λ₯΄λ Github API
https://developer.github.com/v3/
μ¬μ©κ°λ₯ν λͺ¨λ urlμ λν μ 보λ₯Ό μλ΅κ°μΌλ‘ μ λ¬ν΄μ€λ€. (REST Hypermedia λ£°)