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
30
RESTful Web Application by Laravel
LaravelでRESTfulなアプリケーションを実現するために必要な知識と設計思想、HTTPメソッドと安全性/パワーを理解し、その重要性を理解する。
よしたろう
May 23, 2022
Tweet
Share
More Decks by よしたろう
See All by よしたろう
銀河英雄伝説・攻殻機動隊 から人としてのあり方を学んだ
yoshitaroyoyo
1
16
視点の探索と取得〜見える世界が変わるとは何か?何が見えるようになるのか?
yoshitaroyoyo
1
57
フォロワーを活かすリーダー リーダーを活かすフォロワー
yoshitaroyoyo
1
100
対話・多様性が イノベーション・情報精緻化・組織学習に繋がる
yoshitaroyoyo
1
41
人文学から学ぶ 人として、リーダーとして、スクラムマスターとしてのより善い在り方
yoshitaroyoyo
3
1.6k
世界のTOPが世界をどう捉えているのか知りたくないっすか?
yoshitaroyoyo
1
50
スクラムマスターって孤独じゃないですか?
yoshitaroyoyo
1
250
組織学習とアジャイル
yoshitaroyoyo
1
290
スクラムマスターのお仕事.pdf
yoshitaroyoyo
0
130
Other Decks in Programming
See All in Programming
動作確認やテストで漏れがちな観点3選
starfish719
6
1k
責務と認知負荷を整える! 抽象レベルを意識した関心の分離
yahiru
1
230
Amazon S3 TablesとAmazon S3 Metadataを触ってみた / 20250201-jawsug-tochigi-s3tables-s3metadata
kasacchiful
0
160
Grafana Cloudとソラカメ
devoc
0
170
sappoRo.R #12 初心者セッション
kosugitti
0
250
Open source software: how to live long and go far
gaelvaroquaux
0
630
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
450
Linux && Docker 研修/Linux && Docker training
forrep
24
4.5k
ソフトウェアエンジニアの成長
masuda220
PRO
10
1.1k
Spring gRPC について / About Spring gRPC
mackey0225
0
220
メンテが命: PHPフレームワークのコンテナ化とアップグレード戦略
shunta27
0
110
『テスト書いた方が開発が早いじゃん』を解き明かす #phpcon_nagoya
o0h
PRO
2
190
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
Optimizing for Happiness
mojombo
376
70k
Speed Design
sergeychernyshev
27
790
YesSQL, Process and Tooling at Scale
rocio
172
14k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
133
33k
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ͱ