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
LaravelでGraphQLを使ってみた
Search
Takayuki
March 04, 2019
Programming
3
190
LaravelでGraphQLを使ってみた
LaravelでGraphQLを使ってみた話
Takayuki
March 04, 2019
Tweet
Share
More Decks by Takayuki
See All by Takayuki
地方カンファレンス主催のススメ
bumptakayuki
1
93
Laravelで敢えて試す脆弱性のある書き方
bumptakayuki
1
290
地方でのPHPエンジニア採用って実際どうなの?
bumptakayuki
0
360
沖縄観光、名物を一挙紹介!
bumptakayuki
2
380
Laravel ShiftでLaravelのバージョンアップしてみた話
bumptakayuki
1
930
flutterでイベントアプリを作ってみた
bumptakayuki
0
87
オフショア開発の辛みと学んだ事
bumptakayuki
0
300
ChatGPTにStripeのサンプルコードを書かせてみた
bumptakayuki
1
130
ChatGPTに記事を書かせてみた
bumptakayuki
1
200
Other Decks in Programming
See All in Programming
せっかくモデル図描くのなら、嬉しいことが多い方がいいよね!
kuboaki
1
1.7k
App Router への移行は「改善」となり得るのか?/ Can migration to App Router be an improvement
takefumiyoshii
1
120
MySQL のインデックスの種類をおさらいしよう! / overviewing indexes in MySQL
okashoi
0
170
SwiftUI, Jetpack Composeの導入で変化した「家族アルバム みてね」のアプリ開発体験
hicka04
6
400
WebComponentsで フレームワークを1ページに共存させる
webuilder240
0
150
TCAの Shared Stateって どういう仕組みになってんの?
yimajo
0
330
DDDはなぜ難しいのか / 良いコードの定義と設計能力の壁
pospome
24
7.3k
LPIXEL×CADDi_kaerururu
kaerururu
3
300
脱・初心者!脱・マネコン!AWS CDKを使ってみませんか!?
har1101
0
110
DocC Tutorial と TCA におけるテスト機能の紹介
kalupas226
1
330
Migrating to Signals: A Practical Workshop
manfredsteyer
PRO
0
280
WasmOS: Wasmを実行する自作Microkernel
riru
0
370
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
24
5.7k
Unsuck your backbone
ammeep
661
56k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
19
1.9k
Creatively Recalculating Your Daily Design Routine
revolveconf
209
11k
The World Runs on Bad Software
bkeepers
PRO
60
6.6k
Product Roadmaps are Hard
iamctodd
43
9.6k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
24
2.2k
Making Projects Easy
brettharned
106
5.4k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
240
1.2M
Code Review Best Practice
trishagee
54
15k
The Cult of Friendly URLs
andyhume
73
5.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
Transcript
LaravelでGraphQLΛ ͬͯΈͨ LaravelでGraphQLΛ ͬͯΈͨ
3 LaravelͰGraphQLΛͬͯΈΔ Agenda 2 GraphQLͱ 1 ࣗݾհ
1 ࣗݾհ
4 ࣗݾհ ◆໊લ ླ ೭(Suzuki Takayuki) ◆ࣗݾհ ɾ1990ɺਆಸݝੜ·Εɻ ɾࣾձਓʹͳ͔ͬͯΒɺϓϩάϥϛϯάΛ࢝ΊΔɻ ɾ2015ʹϑϧεϐʔυʹೖࣾ͠ɺ2017ʹϑϦʔϥϯεΛ
ͬͨޙʹ201711݄ʹԭೄͰىۀɻ ◆झຯ ίεϓϨɺԻָϥΠϒɺϚϥιϯେձʹग़Δɺٿ؍ઓ ◆εΩϧ ɾPHP, Symfony2,CakePHP3,Laravel5, ɾJavaScript, backbone.js,Angular4,Vue.js,Nuxt.js
2 GraphQLͱ
6 GraphQLͱʁ GraphQLFacebookʹΑΓ։ൃ͞ΕͨΦʔϓϯιʔεͷݴޠͰ͢ɻAPI࡞ͷΈͱ͠ ͯRESTͷΘΓʹ͑·͢ɻRESTAPIͷઃܭͱ࣮ʹ͏֓೦্ͷઃܭϞσϧͰ͢ ͕ɺGraphQLඪ४Խ͞Εͨݴޠɺܕ͚ɺ༷Λ࣋ͪΫϥΠΞϯτͱαʔόʔؒΛڧྗ ʹ݁ͼ͚ͭ·͢ɻҟͳΔσόΠεؒͷ௨৴ʹඪ४Խ͞Εͨݴޠ͕͋Δ͜ͱͰɺେܕ͔ͭΫ ϩεϓϥοτϑΥʔϜͷΞϓϦ։ൃ͕ΑΓγϯϓϧʹͳΓ·͢ɻ https://qiita.com/syu_chan_1005/items/3350f1d12c17a77e98c7
7 GraphQLͷϝϦοτ ᶃେྔͰࡶʹͳΓ͕ͪͳWeb APIͷΤϯυϙΠϯτΛ؆ ܿʹཧ͢Δ͜ͱ͕Ͱ͖Δ ᶄܕ҆શͳ Web API Λ࡞ΕΔɻ ᶅϑϩϯτͱαʔόʔؒͷ༷ॻΛɺಈ͍͍ͯΔίʔυ͔
Β໌֬ʹ࡞ΕΔɻ https://qiita.com/acro5piano/items/b9e3acd4af5ec14d7bb1
ϑϩϯτΤϯυ ௨ৗͷREST APIͱͷҧ͍ ~ैདྷͷREST API~ αʔόαΠυ /login ͳͲͳͲ ͳͲͳͲ /users
/posts
ϑϩϯτΤϯυ ௨ৗͷREST APIͱͷҧ͍ ~GraphQLΛͬͨ߹~ αʔόαΠυ ͳͲͳͲ ͳͲͳͲ /graphql
GraphQLΛ͏͜ͱͰେྔͰࡶʹͳΓ ͕ͪͳWeb APIͷΤϯυϙΠϯτΛ؆ܿ ʹཧ͢Δ͜ͱ͕Ͱ͖Δʂʂ
௨ৗͷREST APIͱͷҧ͍ ~GraphQLΛͬͨ߹~ https://labs.getninjas.com.br/sharing-data-in-a-microservices-architecture-using- graphql-97db59357602
3 LaravelͰGraphQLΛͬͯΈΔ
1 3 ϥΠϒϥϦͷछྨ - laravel-graphql - graphql-laravel -laravel-graphql ͔Βੜ -
Lighthouse -ωοτͷهࣄݟΔݶΓͩͱ͜Ε͕ΦεεϝΒ͍͠ https://qiita.com/acro5piano/items/b9e3acd4af5ec14d7bb1
1 4 laravel-graphqlͷಛ ɾgitͷελʔ͕ଟ͍ ɾPHPʹ͍ۙॻ͖ํ͕ग़དྷΔͷͰphperʹ҆৺ײ͕͋Δ https://qiita.com/acro5piano/items/b9e3acd4af5ec14d7bb1
1 5 Lighthouseͷಛ ɾଞ2ͭͷϥΠϒϥϦͱൺͯɺඇৗʹγϯϓϧʹɺ GraphQL ͬΆ͘ॻ͚Δͷ ͕ಛΒ͍͠ɻ ɾΫΤϦఆ͕ٛ GraphQL Ͱॻ͚Δɻ
ɾܕఆ͕ٛγϯϓϧͰ͋Δ https://qiita.com/acro5piano/items/b9e3acd4af5ec14d7bb1
1 6 laravel-graphqlͱLighthouseͷܕఆٛͷൺֱ https://qiita.com/acro5piano/items/b9e3acd4af5ec14d7bb1 laravel-graphql Lighthouse ɾগͳ͍هड़ྔͰࡁΉ ɾGraphQLͬΆ͘ॻ͚Δ
1 7 ࠓճελʔ͕ଟ͍ laravel-graphqlͰಈ͔ͯ͠ΈΔ
1 8 ڥߏஙΛߦͬͯ $ php artisan serve http://127.0.0.1:8000/graphiql ʹΞΫηε͢Δʂ
1 9 laravel-graphqlͰಈ͔ͯ͠Έͨ https://qiita.com/ucan-lab/items/32969d6a9b5aa99b475e query
2 0 laravel-graphqlͰಈ͔ͯ͠Έͨ https://qiita.com/ucan-lab/items/32969d6a9b5aa99b475e mutation
2 1 ࢀߟ Thanks!! ɾLaravel 5.7 + GraphQLʢInstallฤʣ https://qiita.com/ucan-lab/items/32969d6a9b5aa99b475e ɾLaravel
Ͱ GraphQLʙಋೖฤ https://qiita.com/nunulk/items/5c506d8ef391f5e9971c ɾLaravel Ͱ GraphQL ΔͳΒɺ Lighthouse ͕ྑ͍ https://qiita.com/acro5piano/items/b9e3acd4af5ec14d7bb1