Slide 1

Slide 1 text

Web APIΛཧղ͢Δ php conference Kansai 2017 ຊฤLT࿮ 2017/07/15 େౡ ޫو@sbntaminif

Slide 2

Slide 2 text

ࣗݾ঺հ • ΢ΣϒϦΦגࣜձࣾWEBΤϯδχΞ • ීஈ͸ژ౎Ͱಇ͍͍ͯ·͢ • ඈͼೖΓࢀՃͱ͍͏͜ͱͰ
 ٸᬎ͜ͷϓϨθϯΛ࡞Γ·ͨ͠ʂ

Slide 3

Slide 3 text

Web APIͷઆ໌

Slide 4

Slide 4 text

௨ৗͷHTTP௨৴ ϒϥ΢β 1)1αʔόʔ ϦΫΤετ )5.-

Slide 5

Slide 5 text

APIͷHTTP௨৴ ϒϥ΢β 1)1αʔόʔ ϦΫΤετ Կ͔͠Βͷ஋

Slide 6

Slide 6 text

΍ͬͯΔ͜ͱ͸ ಉ͡Ͱ͢ʂ

Slide 7

Slide 7 text

ϒϥ΢β͕ཧղ͢Δඞཁ͕ ͳ͍ͷͰɺʢ࣮࣭ʣͲΜͳ ஋Ͱ΋ฦͤ·͢ɻ

Slide 8

Slide 8 text

Ͳ͏͍͏࣌ʹ࢖༻͢Δͷ͔

Slide 9

Slide 9 text

APIͷ༻్ • APIલఏͷγεςϜઃܭ࣌ • ΞϓϦͰ৘ใΛऔಘ͢Δ࣌ • ୈࡾऀʹ৘ใΛఏڙ͢Δ࣌

Slide 10

Slide 10 text

REST APIͱ͍͏ ߟ͑ํ

Slide 11

Slide 11 text

REST APIͱ͸ • ιϑτ΢ΣΞΞʔΩςΫνϟͷҰͭ
 Web APIͰଟ͘࠾༻͞Ε͍ͯΔ • URL΍HTTP ϝιουͳͲWebͷ੍໿ʹैΘͤΔ͜ ͱͰڞ௨ཧղΛ࣋ͭ • Twitter΍GithubͷAPI͸
 RESTͷਪ঑ʹैͬͯఏڙ͞Ε͍ͯΔ

Slide 12

Slide 12 text

αϯϓϧʢGitHub APIʣΛ࢖ͬͯઆ໌ https://api.github.com/repos ->GETͰΞΫηε->ϨϙδτϦҰཡΛऔಘ ->POSTͰΞΫηε->ϨϙδτϦΛ௥Ճ “repos”(ϦϙδτϦ)ͱ͍͏ϦιʔεΛ ૢ࡞͢ΔAPIͱͳΔ ΤϯυϙΠϯτ Ϧιʔε

Slide 13

Slide 13 text

REST APIͷਪ঑࣮૷ ʢϝιουʣ • GET͸औಘ • POST͸௥Ճ • PUT͸มߋ • DELETE͸࡟আ

Slide 14

Slide 14 text

REST APIͷਪ঑࣮૷ ʢϝιουʣ • GET͸औಘ -> R(Read) • POST͸௥Ճ -> C(Create) • PUT͸ߋ৽ -> U(Update) • DELETE͸࡟আ -> D(Delete) ->σʔλʢϦιʔεʣʹରͯ͠ૢ࡞

Slide 15

Slide 15 text

REST APIͷਪ঑࣮૷ʢURLʣ • Ϧιʔε෦෼͸໨తޠͷෳ਺ܗ • usersʢձһʣ • tagsʢλάʣ • Ͱ͖Δ͚ͩ୹͘ɺར༻ऀʹΘ͔Γ΍໊͍͢ લΛ͚ͭΔ

Slide 16

Slide 16 text

REST APIͷਪ঑࣮૷ ʢHTTP Responseͦͷ1ʣ • 200൪୅͸ΞΫηεʹ੒ޭͨ͠৔߹ʹฦ͢ • 200͸OK
 201͸Created

Slide 17

Slide 17 text

REST APIͷਪ঑࣮૷ ʢHTTP Responseͦͷ2ʣ • 400൪୅͸ΫϥΠΞϯτʹ໰୊͕͋Δ৔߹ʹฦ͢ • 401͸ೝূ͕ඞཁͳURL
 404͸ͦ΋ͦ΋ଘࡏ͠ͳ͍URL • 500൪୅͸αʔόʹ໰୊͕͋Δ৔߹ʹฦ͢

Slide 18

Slide 18 text

REST APIʹैࣄ͢Δ͜ͱͰ Θ͔Γ΍͍͢APIΛ ઃܭ͠·͠ΐ͏

Slide 19

Slide 19 text

ࢀߟɿWeb API The Good Parts https://www.amazon.co.jp/exec/obidos/ASIN/4873116864/

Slide 20

Slide 20 text

͋Γ͕ͱ͏͍͟͝·ͨ͠