Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
RESTful Web Application by Laravel
Search
よしたろう
May 23, 2022
Programming
0
36
RESTful Web Application by Laravel
LaravelでRESTfulなアプリケーションを実現するために必要な知識と設計思想、HTTPメソッドと安全性/パワーを理解し、その重要性を理解する。
よしたろう
May 23, 2022
Tweet
Share
More Decks by よしたろう
See All by よしたろう
構造化思考・システム化思考 でVUCAを生き抜こう! 簡略版
yoshitaroyoyo
0
8
構造化思考・システム化思考 でVUCAを生き抜こう! 詳細版
yoshitaroyoyo
0
4
【根拠まとめ版】人はなぜ変われないのか?自分を変えるとは何か?どう在るべきなのか?
yoshitaroyoyo
0
14
【補完版:統合編】人はなぜ変われないのか?自分を変えるとは何か?どう在るべきなのか?
yoshitaroyoyo
0
120
【登壇版:ナラティブ編】人はなぜ変われないのか?自分を変えるとは何か?どう在るべきなのか?
yoshitaroyoyo
2
740
人文学から学ぶ 人として、リーダーとして、スクラムマスターとしてのより善い在り方【完全版】
yoshitaroyoyo
0
6
自分を変えるを邪魔するのは自分自身!? 免疫マップで可視化てみよう!
yoshitaroyoyo
0
7
今、人類史上で最もリベラルアーツが必要な時代になっている.pdf
yoshitaroyoyo
0
40
銀河英雄伝説・攻殻機動隊 から人としてのあり方を学んだ
yoshitaroyoyo
1
37
Other Decks in Programming
See All in Programming
MCPとデザインシステムに立脚したデザインと実装の融合
yukukotani
4
1.4k
そのAPI、誰のため? Androidライブラリ設計における利用者目線の実践テクニック
mkeeda
2
310
機能追加とリーダー業務の類似性
rinchoku
2
1.3k
はじめてのMaterial3 Expressive
ym223
2
740
Testing Trophyは叫ばない
toms74209200
0
880
速いWebフレームワークを作る
yusukebe
5
1.7k
デザイナーが Androidエンジニアに 挑戦してみた
874wokiite
0
470
Android 16 × Jetpack Composeで縦書きテキストエディタを作ろう / Vertical Text Editor with Compose on Android 16
cc4966
2
230
Design Foundational Data Engineering Observability
sucitw
3
200
Putting The Genie in the Bottle - A Crash Course on running LLMs on Android
iurysza
0
140
AIと私たちの学習の変化を考える - Claude Codeの学習モードを例に
azukiazusa1
10
4.2k
print("Hello, World")
eddie
2
530
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Thoughts on Productivity
jonyablonski
70
4.8k
A Modern Web Designer's Workflow
chriscoyier
696
190k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Documentation Writing (for coders)
carmenintech
74
5k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
Being A Developer After 40
akosma
90
590k
Context Engineering - Making Every Token Count
addyosmani
3
47
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
13k
Transcript
RESTful Web Application by Laravel LTձ in phpษڧձ @yoshitaro_yoyo
1. ࠓͷඪ 2. REST 3. LaravelͱRESTful 4. HTTPϝιου 5. ҆શੑͱႈੑ
6. খωλ ࠓͷΞδΣϯμ
1.ࠓͷඪ 2. REST 3. LaravelͱRESTful 4. HTTPϝιου 5. ҆શੑͱႈੑ 6.
খωλ ࠓͷΞδΣϯμ
•Laravel Ͱ RESTful ͳ Web ΞϓϦ Λ࡞ΕΔ •֤ HTTP ϝιουͷ͍͚
•҆શੑͱႈੑɺͦͯͦ͠ͷॏཁੑ ̍.ࠓͷඪ
1. ࠓͷඪ 2.REST 3. LaravelͱRESTful 4. HTTPϝιου 5. ҆શੑͱႈੑ 6.
খωλ ࠓͷΞδΣϯμ
RESTful ͳ Web ΞϓϦͱ 2. REST
RESTݪଇʹଇͬͨWeb ΞϓϦ
What is RESTʁ
1.ΞυϨεՄೳੑ ࠷ॏཁɻURIΛ௨͡ɺϦιʔεΛతʹࢦࣔ͢͜͠ͱ͕Ͱ͖Δੑ࣭ɻͯ͢ͷใ͕ҰҙͳURIͰදݱ͞ ΕΔΑ͏ʹ͢Δ͜ͱɻ͜Ε͕ແ͍ͱଓੑͱ౷ҰΠϯλʔϑΣʔε࣮ݱͰ͖·ͤΜ 2.ଓੑ ͋ΔϦιʔεʹʮผͷϦιʔεͷϦϯΫʯΛؚΊΔ͜ͱ͕Ͱ͖ɺϦϯΫΛؚΊΔ͜ͱͰʮผͷϦιʔεʹ ଓ͢Δ͜ͱʯ͕Ͱ͖Δ͜ͱɻ 3.౷ҰΠϯλʔϑΣʔε Ϧιʔεͷऔಘɺ࡞ɺߋ৽ɺআͱ͍ͬͨૢ࡞ɺͯ͢HTTPϝιουΛར༻͢Δ͜ͱɻ͜ͷ߹ͷಘ ʮGETʯʮPOSTʯʮPUTʯɺআʮDELETEʯ্ه̎ͭͷੑ࣭͕อূ͞ΕͯॳΊͯՁͷग़Δੑ࣭ 4.εςʔτϨεੑ
ͯ͢ͷHTTPϦΫΤετ͕શʹ͍ͯ͠Δੑ࣭Ͱ͋ΓɺηογϣϯͳͲͷঢ়ଶཧߦΘΕͳ͍͜ ͱɻ࣮ࡍͦ͜·ͰॏཁͰͳ͍ɻWebαʔϏεͰCookieʹΑΔηογϣϯཧ͕ඞਢ͔ͩΒ RESTͷ4ݪଇ
•REpresentational State Transferͷུ •Representation දݱ •State = ঢ়ଶ •Transfer
= సૹ •දݱͱɺWebαʔόͷૹ৴͢ΔResourcesͷܗࣜ •ResourcesͱɺWeb্ʹଘࡏ͢Δใɺσʔλͷ͜ͱ REST
•Web্ʹଘࡏ͢Δɺ໊લΛ࣋ͬͨ͋Γͱ͋ΒΏΔใ •ੈքதͷResourcesɺURIͰҰҙͷ໊લΛ࣋ͭ •URIͱʮUniform Resource Identi fi erʯͷུ ɹ౷ҰϦιʔεࣝผࢠͱ͍͍ɺResourcesΛࣝผ͢ΔID •URIΛ༻͍Δ͜ͱͰɺϓϩάϥϜResources͕දݱ͢ ΔใʹΞΫηεՄೳʢΞυϨεՄೳੑʣ
ex. http://www.example.com:8080/news/index.htm? page=2&msg=yes#hot ResourcesͬͯԿʁʁ
None
•Web্ʹଘࡏ͢Δɺ໊લΛ࣋ͬͨ͋Γͱ͋ΒΏΔใ •ੈքதͷResourcesɺURIͰҰҙͷ໊લΛ࣋ͭ •URIͱʮUniform Resource Identi fi erʯͷུ ɹ౷ҰϦιʔεࣝผࢠͱ͍͍ɺResourcesΛࣝผ͢ΔID •URIΛ༻͍Δ͜ͱͰɺϓϩάϥϜResources͕දݱ͢ ΔใʹΞΫηεՄೳʢΞυϨεՄೳੑʣ
ex. http://www.example.com:8080/news/index.htm? page=2&msg=yes#hot ResourcesͬͯԿʁʁ
1. ࠓͷඪ 2. REST 3.Laravelͱ RESTful 4. HTTPϝιου 5. ҆શੑͱႈੑ
6. খωλ ࠓͷΞδΣϯμ
• Routing ಛఆΞυϨε͕ಛఆHTTPϝιουͰϦΫ Τετ͞Εͨࡍɺࢦఆͨ͠ίϯτϩʔϥͷ ࢦఆͨ͠ϝιουΛݺͼग़͢ͱ͍͏Έ 3. LaravelͱRESTful ͳ Web ΞϓϦ
REST Controller ͱ Routing
REST Ͱͳ͍ Web ΞϓϦ RESTful ͳ Web ΞϓϦ
RESTful ͳ Web ΞϓϦ
RESTful ͳ Web ΞϓϦ
1. ࠓͷඪ 2. REST 3. LaravelͱRESTful 4.HTTPɹɹ ϝιου 5. ҆શੑͱႈੑ
6. খωλ ࠓͷΞδΣϯμ
4. HTTPϝιου ϝιου ҙຯ (&5 Ϧιʔεͷऔಘ 1045 Ϧιʔεͷ࡞ɺσʔλՃɺͦͷଞॲཧ 165 Ϧιʔεͷ࡞ɺߋ৽
1"5$) Ϧιʔεͷ෦ஔ %&-&5& Ϧιʔεͷআ )&"% Ϧιʔεͷϔομ ϝλσʔλͷऔಘ 015*0/4 Ϧιʔε͕αϙʔτ͍ͯ͠Δϝιουͷऔಘ 53"$& ϓϩΩγಈ࡞ͷ֬ೝ $0/&$5 ϓϩΩγಈ࡞ͷτϯωϧଓͷมߋ $36%໊ ҙຯ ϝιου ʢࢀߟʣ42- $SFBUF ࡞ 1045 165 JOTFSU 3FBE ಡΈࠐΈ (&5 TFMFDU 6QEBUF ߋ৽ 165 1"5$) VQEBUF %FMFUF আ %&-&5& EFMFUF
Μʁ
4. HTTPϝιου ϝιου ҙຯ (&5 Ϧιʔεͷऔಘ 1045 Ϧιʔεͷ࡞ɺσʔλՃɺͦͷଞॲཧ 165 Ϧιʔεͷ࡞ɺߋ৽
1"5$) Ϧιʔεͷ෦ஔ %&-&5& Ϧιʔεͷআ )&"% Ϧιʔεͷϔομ ϝλσʔλͷऔಘ 015*0/4 Ϧιʔε͕αϙʔτ͍ͯ͠Δϝιουͷऔಘ 53"$& ϓϩΩγಈ࡞ͷ֬ೝ $0/&$5 ϓϩΩγಈ࡞ͷτϯωϧଓͷมߋ $36%໊ ҙຯ ϝιου ʢࢀߟʣ42- $SFBUF ࡞ 1045 165 JOTFSU 3FBE ಡΈࠐΈ (&5 TFMFDU 6QEBUF ߋ৽ 165 1"5$) VQEBUF %FMFUF আ %&-&5& EFMFUF
4. HTTPϝιου ϝιου ҙຯ (&5 Ϧιʔεͷऔಘ 1045 Ϧιʔεͷ࡞ɺσʔλՃɺͦͷଞॲཧ 165 Ϧιʔεͷ࡞ɺߋ৽
1"5$) Ϧιʔεͷ෦ஔ %&-&5& Ϧιʔεͷআ )&"% Ϧιʔεͷϔομ ϝλσʔλͷऔಘ 015*0/4 Ϧιʔε͕αϙʔτ͍ͯ͠Δϝιουͷऔಘ 53"$& ϓϩΩγಈ࡞ͷ֬ೝ $0/&$5 ϓϩΩγಈ࡞ͷτϯωϧଓͷมߋ $36%໊ ҙຯ ϝιου ʢࢀߟʣ42- $SFBUF ࡞ 1045 165 JOTFSU 3FBE ಡΈࠐΈ (&5 TFMFDU 6QEBUF ߋ৽ 165 1"5$) VQEBUF %FMFUF আ %&-&5& EFMFUF
4. HTTPϝιου ϝιου ҙຯ (&5 Ϧιʔεͷऔಘ 1045 Ϧιʔεͷ࡞ɺσʔλՃɺͦͷଞॲཧ 165 Ϧιʔεͷ࡞ɺߋ৽
1"5$) Ϧιʔεͷ෦ஔ %&-&5& Ϧιʔεͷআ )&"% Ϧιʔεͷϔομ ϝλσʔλͷऔಘ 015*0/4 Ϧιʔε͕αϙʔτ͍ͯ͠Δϝιουͷऔಘ 53"$& ϓϩΩγಈ࡞ͷ֬ೝ $0/&$5 ϓϩΩγಈ࡞ͷτϯωϧଓͷมߋ $36%໊ ҙຯ ϝιου ʢࢀߟʣ42- $SFBUF ࡞ 1045 165 JOTFSU 3FBE ಡΈࠐΈ (&5 TFMFDU 6QEBUF ߋ৽ 165 1"5$) VQEBUF %FMFUF আ %&-&5& EFMFUF ͬͯΔ͜ͱҰॹʁ
PUT ϝιουͱ POST ϝιουͷҧ͍ POST PUT Ϧιʔεͷ ࡞ ⭕ ⭕
Ϧιʔεͷ 63*ࢦఆ ❌ ⭕ 63*ͷ ܾఆݖ αʔόଆ ΫϥΠΞϯτଆ αʔόͱͷ ݁߹ ૄ ີ ͍ͯΔ 8FCαʔϏε 5XJUUFS 8JLJQFEJB جຊతͳ ༻ํ๏ Ϧιʔε৽ن࡞ Ϧιʔεߋ৽
None
1. ࠓͷඪ 2. REST 3. LaravelͱRESTful 4. HTTPϝιου 5.҆શੑͱɹɹɹɹ ႈੑ
6. খωλ ࠓͷΞδΣϯμ
5. ҆શੑͱႈੑ ҆શੑ ႈੑ Ϧιʔεͷঢ়ଶΛมԽͤͣ͞ ಡΈऔΓઐ༻ͷͷɻ ϦΫΤετͯ͠୯ʹͦͷ࣌Ͱ ͷϦιʔεͷදݱΛऔಘ͍ͯ͠Δ ͚ͩɻ(&5҆શ ಉ͡ૢ࡞Λ܁Γฦͯ݁͠Ռ͕ಉ͡
ˣ ʮಉҰύϥϝʔλʔͰճҎ্Ϧ ΫΤετͯ͠ɺϦιʔεͷঢ়ଶ͕ ಉ͡Ͱ͋Δ͜ͱʯ 165%&-&5&ႈ ΫϥΠΞϯτ͕ະͷ63*ʹΞΫ ηε͕ͯ͠ͳ͍͜ͱ͋Δఔ อূͰ͖Δ γεςϜݎ࿚ੑɺใ߹ੑɺΫ ϥΠΞϯτʹϦΫΤετͷϦτϥ ΠՄ൱Λ௨
֤HTTPϝιουͷରԠ ҆શੑ ႈੑ GET ⭕ ⭕ POST ❌ ❌ PUT
❌ ⭕ DELETE ❌ ⭕ HEAD ⭕ ⭕
ຊདྷͷʮႈʯͷత WebServer WebClient
ຊདྷͷʮႈʯͷత WebServer WebClient ϦΫΤετ
ຊདྷͷʮႈʯͷత WebServer WebClient ϦΫΤετ ᶃϦΫΤετ͠ޭ
ຊདྷͷʮႈʯͷత WebServer WebClient ϦΫΤετ ᶃϦΫΤετ͠ޭ
ຊདྷͷʮႈʯͷత WebServer WebClient ϦΫΤετ ❌ ᶃϦΫΤετ͠ޭ
ຊདྷͷʮႈʯͷత WebServer WebClient ᶄ௨৴োʹΑΓ Ϩεϙϯε͕ಧ͔ͳ͍ ϦΫΤετ ❌ ᶃϦΫΤετ͠ޭ
ຊདྷͷʮႈʯͷత WebServer WebClient ᶄ௨৴োʹΑΓ Ϩεϙϯε͕ಧ͔ͳ͍ ϦΫΤετ ❌ ϦΫΤετϦτϥΠ ᶃϦΫΤετ͠ޭ
ຊདྷͷʮႈʯͷత WebServer WebClient ᶄ௨৴োʹΑΓ Ϩεϙϯε͕ಧ͔ͳ͍ ϦΫΤετ ❌ ϦΫΤετϦτϥΠ ᶅαʔόϦτϥΠʹΑΔ Ϧιʔεͷෆ߹͔Βอޢ
͠ͳ͍͚ͯ͘ͳ͍ ᶃϦΫΤετ͠ޭ
ຊདྷͷʮႈʯͷత WebServer WebClient ᶄ௨৴োʹΑΓ Ϩεϙϯε͕ಧ͔ͳ͍ ϦΫΤετ ❌ ϦΫΤετϦτϥΠ ᶅαʔόϦτϥΠʹΑΔ Ϧιʔεͷෆ߹͔Βอޢ
͠ͳ͍͚ͯ͘ͳ͍ ᶆϦτϥΠʹΑΔϦιʔε ͷ߹ੑ͕อূ͞Εͳͯ͘ ΉΈʹϦτϥΠͰ͖ͳ͍ ᶃϦΫΤετ͠ޭ
ຊདྷͷʮႈʯͷత WebServer WebClient ᶄ௨৴োʹΑΓ Ϩεϙϯε͕ಧ͔ͳ͍ ϦΫΤετ ❌ ϦΫΤετϦτϥΠ ᶅαʔόϦτϥΠʹΑΔ Ϧιʔεͷෆ߹͔Βอޢ
͠ͳ͍͚ͯ͘ͳ͍ ᶆϦτϥΠʹΑΔϦιʔε ͷ߹ੑ͕อূ͞Εͳͯ͘ ΉΈʹϦτϥΠͰ͖ͳ͍ ᶃϦΫΤετ͠ޭ ႈੑ
ຊདྷͷʮႈʯͷత WebServer WebClient ᶄ௨৴োʹΑΓ Ϩεϙϯε͕ಧ͔ͳ͍ ϦΫΤετ ❌ ϦΫΤετϦτϥΠ ᶅαʔόϦτϥΠʹΑΔ Ϧιʔεͷෆ߹͔Βอޢ
͠ͳ͍͚ͯ͘ͳ͍ ᶆϦτϥΠʹΑΔϦιʔε ͷ߹ੑ͕อূ͞Εͳͯ͘ ΉΈʹϦτϥΠͰ͖ͳ͍ ᶃϦΫΤετ͠ޭ ႈੑ ಉ͡ૢ࡞Λ܁Γฦͯ݁͠Ռ͕ಉ͡ ಉҰύϥϝʔλʔͰճҎ্ϦΫΤετͯ͠ɺ
ຊདྷͷʮႈʯͷత WebServer WebClient ᶄ௨৴োʹΑΓ Ϩεϙϯε͕ಧ͔ͳ͍ ϦΫΤετ ❌ ϦΫΤετϦτϥΠ ᶅαʔόϦτϥΠʹΑΔ Ϧιʔεͷෆ߹͔Βอޢ
͠ͳ͍͚ͯ͘ͳ͍ ᶆϦτϥΠʹΑΔϦιʔε ͷ߹ੑ͕อূ͞Εͳͯ͘ ΉΈʹϦτϥΠͰ͖ͳ͍ ᶃϦΫΤετ͠ޭ ႈੑ ಉ͡ૢ࡞Λ܁Γฦͯ݁͠Ռ͕ಉ͡ ಉҰύϥϝʔλʔͰճҎ্ϦΫΤετͯ͠ɺ Ϧιʔεͷঢ়ଶ͕ ಉ͡Ͱ͋Δ͜ͱ
1. ࠓͷඪ 2. REST 3. LaravelͱRESTful 4. HTTPϝιου 5. ҆શੑͱႈੑ
6.খωλ ࠓͷΞδΣϯμ
1. HTMLͷFORMͰࢦఆͰ͖ΔͷGETͱ POST͚ͩ 2. AλάجຊతʹGET͔͑͠ͳ͍ 3. ValidationΤϥʔͷΓGETͷΈ 4. ཧআDELETEͰͳ͘PUT͕దʁ 6.
খωλ
༨ஊɺ࠷ޙʹ 2005ɺGoogle͕ϦϦʔεͨ͠ͱ͋Δπʔϧɻ Web্ʹσʔλΛআ͢ΔαʔόॲཧΛGETϝιουͰड͚͚͍ͯͨ ͨΊ(GETͰDELETE࣮ͨ͠)ΞϓϦ͕ଟଘࡏ͍ͯͨ͠ɻͦΕΒ͕Google ͷΫϩʔϥʹิ͞Εͨ݁ՌɺେྔʹσʔλΛফ͞Εͯ͠·͏ͱ͍͏͜ͱ͕ ى͖ͨɻGETͰࣄલʹͱ͋ΔϦιʔεΛऔಘ͢Δ༷ͩͬͨͨΊGETϝ ιουͰϦιʔε͕আ͞Εͯ͠·ͬͨɻ ݪҼιϑτΣΞͰͳ͘ɺ ᶃWeb্ʹGETΛ্هͷΑ͏ʹޡ༻͢ΔΞϓϦͰᷓΕ͍ͯͨ͜ͱᶄGoogle ͕ݱ࣮ͷWebʹରԠ͠ͳ͍πʔϧΛϦϦʔεͨ͜͠ͱ
͜ͷ2ͩͬͨɻ POST-Redirect-GETɺ͍ΘΏΔPRGύλʔϯ https://qiita.com/furi/items/a32c106e9d7c4418fc9d
ͦΜͳΞϓϦ࡞Βͳ͍Α͏ ʹ͠·͠ΐ͏
ޚਗ਼ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠
None
What is RESTful Web APIʁ ݫ֨ͳఆٛͳ͍͕ɺٛʹHTTPϓϩτίϧΛ༻͍ͯωοτϫʔΫ ӽ͠ʹݺͼग़͢ΞϓϦέʔγϣϯؒɺγεςϜؒͷΠϯλʔϑΣʔε
API ͱ Web API ͷҧ͍ API Web API ൺ ֱ
ද Application Programming Interface Web API ֓ཁ ػೳΛ͏૭ޱ OSɾϛυϧΣΞɾΞϓϦ͕ ͦͷଞͷϓϩάϥϜ͔Β ࣗͷػೳΛݺͼग़ͨ͢Ίʹ ఏڙ͢Δ૭ޱʢͷΑ͏ͳͷʣ Πϯλʔωοτ ܦ༝ͷ"1* Ͳ͜ ͔Β ಉ͡1$ɺ͘͠ -"/ͳͲͷดͨ͡ ωοτϫʔΫܦ༝ Πϯλʔωοτ ܦ༝ ༻ ٕज़ C#ɺC++ɺ7# ͳͲͷ։ൃݴޠ RPC Net Frame ͳͲ SOAPɺREST ͳͲ
API ͱ Web API ͷҧ͍ ※ܦΫϩεςοΫΑΓҾ༻
˒ϝϦοτ ΞϓϦέʔγϣϯͷதͷϦιʔε͕URIͰࣔͤΔɻ ɹΞυϨεཝʹೖྗ͢ΕɺͦͷϦιʔεΛࢀরͰ͖Δɻ ɹ˒ͲͷϦιʔεΛૢ࡞͠Α͏ͱ͍ͯ͠Δ͔͕Θ͔Δɻ URIʹنଇ͕ੜ·ΕΔ͜ͱͰɺར༻͢Δ։ൃऀָ͕ʹͳΔɻ ɹ˒কདྷఆ͞ΕΔγεςϜنͷ૿େʹରԠՄೳͳઃܭͰ͋Δɻ εςʔτϨεʹ͢Δ͜ͱͰɺεέʔϥϏϦςΟ্͕ɻ ɹ˒ΞΫηεͷूதʹ͍͑͢ߏʹͰ͖Δɻ ౷߹ͷ૬ରతͳ༰қ͞ ɹ˒ඪ४తͳσʔλϑΥʔϚοτ(XMLJSON)Λѻ͏͜ͱͰɺ
ɹɹଞγεςϜͱͷ࿈ܞ͕༰қʹͳΔɻ ɹ˒RESTʹج͍ͮͨWebΞϓϦͰɺΠϯλϑΣʔε͕ݻఆ͞Ε͍ͯΔҝ ɹɹޓੑͷ͕ൃੜ͠ͳ͍ɻ ඪ४తͳAPIͷఏڙ ɹRESTfulAPIΛެ։͢Δ͜ͱͰɺ ɹඪ४తͳσʔλϑΥʔϚοτΛ͍ɺଟ༷ͳΞϓϦέʔγϣϯΛఏڙ͢Δ͜ͱ͕Ͱ͖Δɻ ˒σϝϦοτ ɾRESTͷ੍ ɹ˒ϓϩάϥϛϯάݴޠϦιʔεࢦͰͳ͍ͷͰɺURIͱϚοϐϯά͢ΔίʔυԚ͘ͳΓ͕ͪ ɹREST APIΛϋΠύʔςΩετۦಈʹ͢Δͷൺֱత͍͠ɻ RESTful Web APIͱ