Slide 1

Slide 1 text

֓೦͔ΒֶͿਖ਼͘͠RESTfulͳ APIͱWP REST APIͰͷ࣮ྫ 2017.09.03 #wb_rest HANATANI Takuma #wbosaka #wbkyoto #wbnagano

Slide 2

Slide 2 text

ࠓ೔͸RESTࡇΓ

Slide 3

Slide 3 text

͍··Ͱ͸୯ମͰಈ͘͜ͱΛલఏͱ͍ͯͨ͠ WordPress͕֎෦ʹ৘ใ͕ग़ͤ·͢

Slide 4

Slide 4 text

ͦͯ͠WP REST APIʹΑͬͯͦͷ৘ใΛ ΍ΓͱΓ͢Δͱ෯͕޿͕Γ·͢Αʂ

Slide 5

Slide 5 text

͔֬ʹWordPressͷσʔλ͕ APIͱͯ͠ఏڙ͞ΕΔͱͰ͖ Δ͜ͱ͸૿͑Δ

Slide 6

Slide 6 text

࣮ࡍ͜͏͍͏׆༻ํ๏͕͋Γ·͢ʂ

Slide 7

Slide 7 text

طʹࣄྫ͸୔ࢁ͋Δ

Slide 8

Slide 8 text

ͦͷ্͜ͷAPI͸໊લͷ௨ΓRESTfulͰɺ Ϟμϯͳߏ੒Ͱ࢖͍΍ͯ͘͢ศརͰ͢Αʂ

Slide 9

Slide 9 text

Ͱ΋͜ͷࠜఈͷRESTʹ͍ͭͯ ཧղ͍ͯ͠·͔͢ʁ

Slide 10

Slide 10 text

POST͚ͩͰͳ͘PUT΍ DELETE͕࢖ΘΕ͍ͯͨΒ REST? ʁ

Slide 11

Slide 11 text

URLͷܗ͕ࣜͦΕͬΆ͍ͷ͕ REST? ʁ

Slide 12

Slide 12 text

JSON͕ଟ͍͚ΕͲJSONͩͬ ͨΒREST? ʁ

Slide 13

Slide 13 text

REST͸ԿΛ΋ͬͯREST? ʁ

Slide 14

Slide 14 text

ʮWP REST APIʯͱ͍͏Ϟϊ

Slide 15

Slide 15 text

͚ͩͰͳ͘

Slide 16

Slide 16 text

RESTͱ͍͏֓೦Λ೺Ѳ͢Δ

Slide 17

Slide 17 text

Կ͕REST͔Λ໌֬ʹ͠ɺ RESTful APIͷڞ௨఺ʹ͍ͭͯ ஌Δ

Slide 18

Slide 18 text

ʮ࢖͏࣌ʯʮ࡞Δ࣌ʯ྆ํͷ ֶशίετΛେ෯ʹݮΒ͢

Slide 19

Slide 19 text

ࠓ೔ͷΰʔϧ

Slide 20

Slide 20 text

ΞδΣϯμ • RESTʹ͍ͭͯ • RESTͷجຊݪଇʹ͍ͭͯ • ͓͖͍֮͑ͯͨผʹREST͡Όͳ͍ϧʔϧ • RESTݪཧओٛΛ؏͘৔߹ͷͭΒ͞ • WP REST APIʹ͓͚ΔRESTͱͷ෇͖߹͍ํ • ·ͱΊ

Slide 21

Slide 21 text

ΞδΣϯμ • RESTʹ͍ͭͯ • RESTͷجຊݪଇʹ͍ͭͯ • ͓͖͍֮͑ͯͨผʹREST͡Όͳ͍ϧʔϧ • RESTݪཧओٛΛ؏͘৔߹ͷͭΒ͞ • WP REST APIʹ͓͚ΔRESTͱͷ෇͖߹͍ํ • ·ͱΊ

Slide 22

Slide 22 text

RESTʹ͍ͭͯ

Slide 23

Slide 23 text

RESTͱ͸ʁ ݯྲྀʹ͍ͭͯ • 2000೥ʹఏএ͞Εͨ࿦จΛݯྲྀͱ͢ΔWeb։ൃʹ͓͚Δελ Πϧͷݺশ • ݱ୅తͳWeb։ൃɺಛʹAPI։ൃͷ෼໺Ͱओྲྀͱͳ͍ͬͯΔ • ࠓʹͳͬͯྲྀߦ͍ͬͯΔͷ͸ΞϓϦ։ൃɾSPA։ൃͳͲ͕੎ྗ ΛڧΊͨ͜ͱʹΑͬͯΫϥΠΞϯτɾαʔόʔϞσϧʹ͓͚ ΔͦΕͧΕ͕໌֬ʹ෼཭͠͸͡ΊͨͳͲ͕ཧ༝ https://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm

Slide 24

Slide 24 text

RESTͱ͸ʁ ஫ҙ఺ • RESTࣗମ͸࢓༷Ͱ΋ͳ͚Ε͹ΞʔΩςΫνϟͰ΋ͳ͘ɺطଘ ͷ֓೦ͷू·ΓͰ͋Δ • ҰԠ໌֬ͳఆٛ͸ଘࡏ͢Δ͕ɺ͋͘·Ͱ΋֓೦తͳ΋ͷͰ͋ Δ

Slide 25

Slide 25 text

ΞδΣϯμ • RESTʹ͍ͭͯ • RESTͷجຊݪଇʹ͍ͭͯ • ͓͖͍֮͑ͯͨผʹREST͡Όͳ͍ϧʔϧ • RESTݪཧओٛΛ؏͘৔߹ͷͭΒ͞ • WP REST APIʹ͓͚ΔRESTͱͷ෇͖߹͍ํ • ·ͱΊ

Slide 26

Slide 26 text

RESTͷجຊݪଇʹ͍ͭͯ

Slide 27

Slide 27 text

RESTͷجຊݪଇʹ͍ͭͯ ࠷௿ݶ೺Ѳ͓ͯ͘͠ͱྑ͍ݪଇ • εςʔτϨεͳΠϯλʔϑΣʔε • Ϧιʔεࢸ্ओٛʹΑΔҰҙͳࣝผࢠͷURIܗࣜͰͷఏڙ • Ϧιʔεʹରͯ͠ͷHTTPϝιουϕʔεͰͷૢ࡞ • ͦΕͧΕͷϦιʔε΁ͷΞΫηεઌͷϦϯΫͷఆٛ

Slide 28

Slide 28 text

RESTͷجຊݪଇʹ͍ͭͯ εςʔτϨε • શͯͷHTTPϦΫΤετʹ͓͍ͯͦͷ௨৴ʹඞཁͳ৘ใ͕શͯ ؚ·Ε͍ͯΔ • ͢΂ͯͷ௨৴͸ಠཱ͓ͯ͠ΓɺͦΕͧΕ͕લޙͷίϯςΩε τʹ͍ͭͯ೺Ѳ͍ͯ͠Δඞཁ͕ͳ͍

Slide 29

Slide 29 text

RESTͷجຊݪଇʹ͍ͭͯ Ϧιʔεओٛ • REST͸શͯͷΞΫηεͷ໨తޠΛϦιʔεͱͯ͠ఆ͍ٛͯ͠ Δ( `posts`, `users` ͳͲ) • RESTʹ͓͍ͯ͸ɺ͜ΕΒͷϦιʔεશͯ͸ඞͣҰҙͳࣝผࢠ Λ࣋ͪɺΞΫηε͕ՄೳͰ͋Δ(ྫ: /posts/1 )

Slide 30

Slide 30 text

RESTͷجຊݪଇʹ͍ͭͯ HTTPϝιουϕʔεͰͷΞΫηε • RESTͷϦιʔε΁ͷૢ࡞͸ϙϐϡϥʔ͔ͭ࠷খݶͷ໋ྩηοτʹ Αͬͯදݱ͞ΕΔ • ΑΓ࣮૷ʹ͍ۙݺশͰHTTPͷ GET , POST , PUT , DELETE ͷ4छΛ ར༻͢Δ • ͜Ε͸ඞͣ͠΋CRUDͱରԠ͢Δ΋ͷͰ͸ͳ͍ • ͱ͸͍͑WordPressͷΑ͏ͳൺֱతϦϨʔγϣϯ͕؆ܿͳγεςϜʹ ͓͍ͯ͸CRUDͱͷϚοϐϯάͱͳΓ͕ͪ

Slide 31

Slide 31 text

RESTͷجຊݪଇʹ͍ͭͯ Ϧιʔε΁ͷϋΠύʔϦϯΫ • ϦιʔεͷΞΫηε࣌ɺΞϓϦέʔγϣϯʹؔ͢Δ৘ใ΍ঢ় ଶͷมԽʹ͍ͭͯͷϦϯΫΛఏڙ͢Δ • ͋ΔಛఆͷϦιʔε΁ΞΫηε͢ΔࡍɺͦͷϦιʔε΁ͱؔ ࿈͢ΔϦιʔε΁ͱΞΫηε͢Δ࣌ʹ͸୯७ʹͦͷϨεϙϯ εʹؚ·ΕΔϦϯΫΛḷΔ͚ͩͰྑ͍ • ݪཧओٛͱͯ͠͸ɺಛఆͷΤϯυϙΠϯτʹΞΫηεͨ࣌͠ ఺ͰؔΘΔϦιʔε͕શͯӾཡͰ͖Δ

Slide 32

Slide 32 text

ΞδΣϯμ • RESTʹ͍ͭͯ • RESTͷجຊݪଇʹ͍ͭͯ • ͓͖͍֮͑ͯͨผʹREST͡Όͳ͍ϧʔϧ • RESTݪཧओٛΛ؏͘৔߹ͷͭΒ͞ • WP REST APIʹ͓͚ΔRESTͱͷ෇͖߹͍ํ • ·ͱΊ

Slide 33

Slide 33 text

͓͖͍֮͑ͯͨ ผʹREST͡Όͳ͍ϧʔϧ

Slide 34

Slide 34 text

REST͡Όͳ͍ϧʔϧ ͜ΕΒ͸RESTͷඞਢཁ݅Ͱ͸ͳ͍ • JSON͕ඞਢͰ͸ͳ͍ • HTTPͷεςʔλείʔυΛ༗ޮ׆༻͢Δ͜ͱ΋ඞਢͰ͸ͳ͍ • Bearerೝূ΋ඞਢͰ͸ͳ͍ • Ϧιʔε͕ෳ਺ܗͰ͋Δ͜ͱ΋ಛʹඞਢͰ͸ͳ͍ • όʔδϣχϯά΋ඞਢͰ͸ͳ͍

Slide 35

Slide 35 text

REST͡Όͳ͍ϧʔϧ JSON͕ඞਢͰ͸ͳ͍ • JSON͸RESTͷඞਢཁ݅Ͱ͸ͳ͍ • ͳΜͰ΋JSONͱͯ͠ఏڙ͞Ε͍ͯΔͨΊޡղ͕ͪ͠ • ݱʹɺRESTͷఏএऀ͕ޙʹ͍͋͛ͯΔʮRESTͷ੒ख़౓ʯͷ αϯϓϧ͸XMLͰهड़͞Ε͍ͯΔ https://www.infoq.com/jp/news/2010/03/RESTLevels

Slide 36

Slide 36 text

REST͡Όͳ͍ϧʔϧ HTTPͷεςʔλείʔυΛ࠷େݶ׆༻͢Δඞཁ͸ͳ͍ • RESTࣗମ͕HTTPͷຊདྷͷػೳΛ࠷େݶ׆༻͢ΔΑ͏ʹ࡞Β Ε͍ͯΔͷͰؒҧ͍Ͱ͸ͳ͍ • ͱ͸͍͑͜Εࣗମ͸ඞͣ͠΋ར༻͠ͳ͚Ε͹ͳΒͳ͍Θ͚Ͱ ͸ͳ͍ • ϓϥάϚςΟοΫͳ࿩ͱͯ͠͸ਖ਼͍͠

Slide 37

Slide 37 text

REST͡Όͳ͍ϧʔϧ Bearerೝূ΋ඞਢͰ͸ͳ͍ • OAuth / BearerͰͷೝূʹΑͬͯRESTful APIͷೝূ͸ߦΘΕ ͕ͪͰ͸͋Δ͕ɺBearerࣗମ͸ඞਢͰ͸ͳ͍ • ͦ΋ͦ΋ Authorization ϔομʔΛ෇༩͍ͯ͠Δ͜ͱ͸εςʔ τϨεͷ৚͔݅Βҳ୤͍ͯ͠ΔͷͰ͸ʁ • ͜Ε΋ϓϥάϚςΟοΫͳ࿩ͱͯ͠͸ਖ਼͍͠

Slide 38

Slide 38 text

REST͡Όͳ͍ϧʔϧ Ϧιʔε͕ෳ਺ܗͰ͋Δ͜ͱ΋ඞਢͰ͸ͳ͍ • ಛʹඞਢͰ͸ͳ͍ • ωοτ্ʹ͸Α͘ʮRESTfulͳAPIͷ։ൃͰ͸શͯෳ਺ܗʹ͠ ·͠ΐ͏ʯͱ͋Δ͕ͦΕࣗମ͸ϕετϓϥΫςΟεͰ͋Δ • ϓϥάϚςΟοΫͳ࿩ͱͯ͠͸ਖ਼͍͠

Slide 39

Slide 39 text

REST͡Όͳ͍ϧʔϧ όʔδϣχϯά΋ඞਢͰ͸ͳ͍ • `/api/v1/` ͷΑ͏ͳߏ੒΋Α͘ݟΔ͕ඞਢͰ͸ͳ͍ • རศੑΛߟ͑Δͱ໪࿦͋ͬͨ΄͏͕ྑ͍͜ͱ͸ؒҧ͍ͳ͍ • ϓϥάϚςΟοΫͳ࿩ͱͯ͠͸ਖ਼͍͠

Slide 40

Slide 40 text

ΞδΣϯμ • RESTʹ͍ͭͯ • RESTͷجຊݪଇʹ͍ͭͯ • ͓͖͍֮͑ͯͨผʹREST͡Όͳ͍ϧʔϧ • RESTݪཧओٛΛ؏͘৔߹ͷͭΒ͞ • WP REST APIʹ͓͚ΔRESTͱͷ෇͖߹͍ํ • ·ͱΊ

Slide 41

Slide 41 text

RESTݪཧओٛΛ؏͘৔߹ͷ ͭΒ͞

Slide 42

Slide 42 text

RESTݪཧओٛΛ؏͘৔߹ͷͭΒ͞ ೝূͲ͏͢ΔͶΜ໰୊ • Cookie΍ηογϣϯʹΑͬͯϦΫΤετ಺Ͱԣஅతͳίϯς Ωετ͕ੜ·Εͨ࣌఺ͰεςʔτϨεͰ͸ͳ͍ • ਖ਼͘͠εςʔτϨεͰ͋ΔͨΊʹ͸ೝূΛίϯςΩετʹґ ଘ͠ͳ͍ܗʹ͢Δඞཁ͕͋Δ • Authorization ϔομʔΛར༻ͯ͠ Bearer ೝূ͕ϝδϟʔͰ ͋Δ͕ɺ͜Εࣗ਎΋ೝূΛඞཁͱ͍ͯ͠Δ

Slide 43

Slide 43 text

RESTݪཧओٛΛ؏͘৔߹ͷͭΒ͞ /search?q= Ͳ͏͢ΔͶΜ໰୊ • RESTʹ͓͍ͯɺURIͷର৅ͱͳΔ΋ͷ͸શͯϦιʔεͱͳΔͨ Ίɺ͜Ε͸໨తޠͱͳΔ໊ࢺͰ͋Δ΂͖Ͱ͋Δ • ͦͷதͰݕࡧΛදݱ͢Δ৔߹ɺ `search` ͱ͍͏୯ޠ͸ಉࢤͰ͋ ΔͨΊෆ੔߹͕ੜ͡Δ • Ұͭʹ /users?q= ͱ͍͏ղܾํ๏ΛͱΔ͜ͱ΋ՄೳͰ͋Δ͕ɺ ҰํͰ /users ͷऔಘʹ͔͔Δίετ΍࣮૷্ͷ໰୊΋େ͖͍

Slide 44

Slide 44 text

RESTݪཧओٛΛ؏͘৔߹ͷͭΒ͞ ͜ΕΒʹ͍ͭͯͷղܾํ๏ • جຊతʹ͸ REST ͸ API ͷݪଇͱͳΔ֓೦Ͱ͋ΔҎ্ͷҙຯ ͸࣋ͨͳ͍ͷͰɺʮRESTͬΆ͘ʯར༻ऀ͕ѻ͍΍͍͢ܗͰఏ ڙ͢Δ͜ͱ͕ཧ૝ • ࠷ऴతʹAPIΛར༻͢Δ΋ͷ͸ API ϢʔβʔͱͳΔਓؒͳͷ Ͱਓؒʹѻ͍΍͍͢ܗͰ࡞Δ΄͏͕ྑ͍

Slide 45

Slide 45 text

Qiita API͸ ඇ REST Ͱ͸͋Δ͕ൺֱత REST ʹ͍ۙ I/F Λఏڙ͍ͯ͠Δ

Slide 46

Slide 46 text

Qiita API͸ ඇ REST Ͱ͸͋Δ͕ൺֱత REST ʹ͍ۙ I/F Λఏڙ͍ͯ͠Δ

Slide 47

Slide 47 text

esa API ΋ ඇ REST Ͱ͸͋Δ͕ൺֱత REST ʹ͍ۙ I/F Λఏڙ͍ͯ͠Δ

Slide 48

Slide 48 text

esa API ΋ ඇ REST Ͱ͸͋Δ͕ൺֱత REST ʹ͍ۙ I/F Λఏڙ͍ͯ͠Δ

Slide 49

Slide 49 text

ΞδΣϯμ • RESTʹ͍ͭͯ • RESTͷجຊݪଇʹ͍ͭͯ • ͓͖͍֮͑ͯͨผʹREST͡Όͳ͍ϧʔϧ • RESTݪཧओٛΛ؏͘৔߹ͷͭΒ͞ • WP REST APIʹ͓͚ΔRESTͱͷ෇͖߹͍ํ • ·ͱΊ

Slide 50

Slide 50 text

WP REST APIʹ͓͚Δ RESTͱͷ෇͖߹͍ํ

Slide 51

Slide 51 text

WP REST APIʹ͓͚ΔRESTͱͷ෇͖߹͍ํ WP REST API͸ՄೳͳݶΓRESTͷ֓೦Λ९क͍ͯ͠Δ • WP REST API͸RESTfulͰ͋Δ͜ͱΛࢸ্ͱͯ͠࡞੒͞Ε͍ͯ Δ • WP REST API͸ɺRESTͰ͸ରॲ͖͠Εͳ͍໰୊ʹ͍ͭͯɺՄ ೳͳݶΓRESTΛ९क͢ΔΑ͏ਐΊ͍ͯΔ • ͱ͸͍࣮͑ࡍ໰୊ͱͯ͠ෆՄೳͳͱ͜Ζʹଥڠ͸͋Δ

Slide 52

Slide 52 text

WP REST APIͷREST९कʹ͍ͭͯͷઆ໌

Slide 53

Slide 53 text

WP REST APIʹ͓͚ΔRESTͱͷ෇͖߹͍ํ جຊతͳར༻ʹ͍ͭͯ • WP REST API͸ɺWordPress͕΋ͭ๲େͳϦιʔεʹ͍ͭͯ جຊతͳૢ࡞ΛRESTʹԊͬͨܗͰఏڙ͍ͯ͠Δ • ྫ͑͹ɺ [GET] /posts ʹͯ ౤ߘͷҰཡͷऔಘΛɺ [GET] / posts/ ʹͯ୯Ұͷ౤ߘͷऔಘΛɺ [POST] /posts ʹͯ ౤ߘͷ࡞੒Λߦ͏͜ͱ͕Մೳɻ • ͜ΕΒ͕ΧςΰϦɾϢʔβʔɾݻఆϖʔδͳͲͦΕͧΕʹର ͯ͠ఏڙ͞Ε͍ͯΔ

Slide 54

Slide 54 text

WP REST APIͷجຊతͳϦΫΤετʹ͍ͭͯͷpayload, response

Slide 55

Slide 55 text

WP REST APIʹ͓͚ΔRESTͱͷ෇͖߹͍ํ Searchʹ͍ͭͯ • WordPressͰ͸RESTʹ͙ͦΘͳ͍ /search ܥͷΤϯυϙΠ ϯτͰ͸ͳ͘ɺ /posts ΁ͷ֦ுͱ͍͏ܗͰߦ͍ͬͯΔ • /posts?search= ͱ͍͏ܗࣜʹͯݕࡧ͕Մೳͱͳ͍ͬͯΔ • ͜Εࣗମ͸Ϧιʔεͱਖ਼͘͠Ϛον͓ͯ͠Γɺ͔ͭGETʹͯ ϦιʔεͷมԽ͕ߦΘΕͳ͍ͷͰਖ਼͍͠ͱ͍͑Δ

Slide 56

Slide 56 text

WP REST APIʹ͓͚ΔRESTͱͷ෇͖߹͍ํ ೝূʹ͍ͭͯ • WP REST APIͰ͸ɺೝূΛ OAuth, Basic, ͦͯ͠CookieͰ ߦ͍ͬͯΔ

Slide 57

Slide 57 text

WP REST APIʹ͓͚Δೝূํ๏ͷछผʹ͍ͭͯ

Slide 58

Slide 58 text

WP REST APIʹ͓͚Δೝূํ๏ͷछผʹ͍ͭͯ

Slide 59

Slide 59 text

WP REST APIʹ͓͚Δೝূํ๏ͷछผʹ͍ͭͯ

Slide 60

Slide 60 text

WP REST APIʹ͓͚Δೝূํ๏ͷछผʹ͍ͭͯ

Slide 61

Slide 61 text

WP REST APIʹ͓͚ΔRESTͱͷ෇͖߹͍ํ ೝূʹ͍ͭͯ • WP REST APIͰ͸ɺೝূΛ OAuth, Basic, ͦͯ͠CookieͰߦͬ ͍ͯΔ • ໪࿦Cookieʹ͍ͭͯ͸εςʔτϨεͱ͸ݴ͍೉্͍ɺଞͷೝ ূ΋௨৴ʹίϯςΩετΛඞཁͱ͢Δ • WordPressͱ͍͏Ϧιʔεͷ࡞੒ʹ੍ݶΛ՝͢ͱ͍͏Ϟνϕʔ γϣϯʹ͓͍ͯؒҧ͍Ͱ͸ͳ͍ʢؾ͕͢Δʣ • ݱ୅ʹ͓͍ͯ͸͜͜ʹର͢Δਖ਼͍͠ιϦϡʔγϣϯ͸ͳ͍

Slide 62

Slide 62 text

ΞδΣϯμ • RESTʹ͍ͭͯ • RESTͷجຊݪଇʹ͍ͭͯ • ͓͖͍֮͑ͯͨผʹREST͡Όͳ͍ϧʔϧ • RESTݪཧओٛΛ؏͘৔߹ͷͭΒ͞ • WP REST APIʹ͓͚ΔRESTͱͷ෇͖߹͍ํ • ·ͱΊ

Slide 63

Slide 63 text

·ͱΊ

Slide 64

Slide 64 text

·ͱΊ ᶃ RESTͷجຊ • REST͸͍·͔Β15೥Ҏ্લʹఏএ͞ΕͨWeb։ൃͷઃܭελΠϧ Ͱ͋Δ • RESTͷେ͖ͳಛ௃ͱͯ͠ɺҎԼͷ༷ͳ΋ͷ͕͋Δ • GET, POST, PUT, DELETEΛར༻ͨ͠Ϧιʔεૢ࡞͕ఏڙ͞Ε͍ͯΔ • εςʔτϨεͰ͋Δ͜ͱʹΑΔѻ͍΍͍͢I/F͕ఏڙ͞Ε͍ͯΔ • ϦιʔεओٛͰ͋Δ͜ͱʹΑΓURIʹͯશ͕ͯ໌ࣔ͞Ε͍ͯΔ

Slide 65

Slide 65 text

·ͱΊ ᶄ ͭΒ͞ • REST͸कΓ͗͢ΔͱͭΒ͍ • ਖ਼͍͠RESTfulઃܭ͸ਖ਼͍͠WebαʔϏεɾWebαΠτͷઃ ܭͰ͋Δͱ͸ݶΒͳ͍ • ࠷ऴతʹ͸ར༻͢Δଆͷ໨ઢʹཱͬͯߏங͢Δ͜ͱ͕ॏཁ

Slide 66

Slide 66 text

·ͱΊ ᶅ WordPress • WP REST API͸RESTͷجຊ෦෼͸क͍ͬͯΔͷͰRESTͷΠ ϝʔδ௨Γʹୟ͘ͱେ఍ͷૢ࡞͸ظ଴௨Γʹಈ͘ • جຊʹ஧࣮ͳ࡞ΓͰ͸͋ΔͷͰɺRESTʹֶ͍ͭͯͿʹ͸ஸ౓ ྑ͍ࢿྉͱͳ͍ͬͯΔ • ͱ͸͍͑Ұ෦CookieೝূͳͲଥڠ͕͋ΔͨΊશ͕ͯRESTful ͔ͱݴΘΕΔͱͦ͏Ͱ͸ͳ͍

Slide 67

Slide 67 text

͓ΘΓʹ

Slide 68

Slide 68 text

·ͱΊ • RESTͷجຊతͳಛ௃͸ϞμϯͳWebαʔϏεͰ͸RESTͰͳ ͘ͱ΋࠾༻͞Ε͍ͯΔ • RESTͷجຊΛ͓֮͑ͯ͘ͱ༷ʑͳαʔϏεΛར༻͢Δࡍͷֶ शίετͷ௿ݮʹܨ͕Δ • ͱ͸͍͑࡞੒͢Δ৔߹͸ݻࣥ͗͢͠ͳ͍Α͏ʹ͠·͠ΐ͏

Slide 69

Slide 69 text

๨Ε͍ͯ·͕ͨ͠

Slide 70

Slide 70 text

ࣗݾ঺հ Ֆ୩୓ຏ a.k.a @potato4d • དྷ೥੒ਓ͠·͢ • େࡕੜ·Εେࡕҭͪौ୩ࡏॅ • ීஈ͸ϑϩϯτΤϯυΤϯδχΞ • ͱ͖Ͳ͖PHPͱ͔ॻ͍ͯ·͢ • PHPΧϯϑΝϨϯε2017Ͱొஃ͢Δͷ ͰԠԉ͍ͯͩ͘͠͞