RESTful API
RESTful API
Web上で使用される各種リソースをHTTP URIとして表し、これらのリソースをHTTPメソッド(ロード、受信など)と定義する.
HTTP Method + Payload
の形で簡潔に表現することができる.Payload
HTTPリクエストからサーバに送信されたデータを、箱詰めとして送信するデータ
RESTful APIを使用する理由
これは
self-descriptiveness
の特徴を持っているからです.URIでは
GET/users
、POST/beverages/1
と同じ形式で表される.URIを見るだけで何のAPIなのか分かりやすいです.
ただし、RESTful APIには既定の標準規則が存在しないため、開発者では既定の規則にデフォルトで従う.そのため、形が変わる可能性があります.
API設計規則
GET/users/show/1 -> GET users/1
GET delete/user/1 -> DELETE /users/1
GET /users/{user_id}/profile
GET users/1/profile-photo.jpg ❌
/
は含まれません.後でリソースを追加する必要がある場合は、
?
が貼り付けられます./
を最後に貼ると、雷索を放すことができません._
)は使用されません.Path Parameter
URI末尾に
/id
を加算すると、id値を有するデータを受信することができる.GET http://10.58.4.1:8000/products
{
"results": [
{
"id": 1,
"name": "사리곰탕"
"price: "1000원"
},
{
"id": 2,
"name": "신라면"
"price: "800원"
},
]
}
GET http://10.58.4.1:8000/products/2 {
"results": [
{
"id": 2,
"name": "신라면"
"price: "800원"
},
]
}
Query Parameter
GET /users?search=신라면
GET /products?offset=0&limit=100
GET /products?ordering=-id
GET /products?price=3000&name=신라면
Path Parameter vs Query Parameter
GET /products/3
およびGET /products?id=3
は同じ結果を示した.どちらの方法を使えばよいのでしょうか.
勢いに乗って導く.
複数の条件にわたってデータをフィルタリングしたり、検索機能を実装したりする必要がある場合はquery parameterを使用することが望ましい.URIが長すぎる場合やフィルタリング、書き込みなどの機能が必要でない場合はpath parameterを使用するだけでよい.
Reference
この問題について(RESTful API), 我々は、より多くの情報をここで見つけました https://velog.io/@alswl5181/RESTful-APIテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol