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
Introducing GraphQL-Ruby
Search
yotuba088
October 21, 2020
Programming
3
1.6k
Introducing GraphQL-Ruby
iCARE Dev Meetup #14 でのLT資料です。
https://icare.connpass.com/event/189356/
yotuba088
October 21, 2020
Tweet
Share
More Decks by yotuba088
See All by yotuba088
How to improve event attraction for engineers
yotuba088
0
130
Trying to upgrade Rails
yotuba088
2
1.2k
Other Decks in Programming
See All in Programming
CSS Linter による Baseline サポートの仕組み
ryo_manba
1
110
第3回関東Kaggler会_AtCoderはKaggleの役に立つ
chettub
3
1k
Introduction to kotlinx.rpc
arawn
0
700
CI改善もDatadogとともに
taumu
0
120
法律の脱レガシーに学ぶフロントエンド刷新
oguemon
5
740
仕様変更に耐えるための"今の"DRY原則を考える / Rethinking the "Don't repeat yourself" for resilience to specification changes
mkmk884
2
470
2,500万ユーザーを支えるSREチームの6年間のスクラムのカイゼン
honmarkhunt
6
5.3k
Spring gRPC について / About Spring gRPC
mackey0225
0
220
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
520
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
630
Unity Android XR入門
sakutama_11
0
160
PHPカンファレンス名古屋2025 タスク分解の試行錯誤〜レビュー負荷を下げるために〜
soichi
1
210
Featured
See All Featured
Code Review Best Practice
trishagee
67
18k
Done Done
chrislema
182
16k
Agile that works and the tools we love
rasmusluckow
328
21k
Writing Fast Ruby
sferik
628
61k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Building an army of robots
kneath
303
45k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Fireside Chat
paigeccino
34
3.2k
How to Ace a Technical Interview
jacobian
276
23k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Transcript
GraphQL-Rubyの実戦投入と知見 https://twitter.com/yotuba_eng
クエリを書けば欲しい形のJSONを返してくれるAPI GraphQLとは?
フロントエンドからのデータ取得 外部公開用APIとしても使用 弊社ではどのように使っている?
エンドポイントが一つになる バージョンレス 問い合わせるクエリをユーザー側が作れる RESTとの違いは?何が便利?
✖ 全てのユーザーが同じ操作はできない ✖ 社内用と外部公開用で取得できる情報を変えたい サービスとしてやらなければいけないこと
問い合わせるクエリをユーザー側が作れる ↓ 無限に深いデータを問い合わせられたら? 見られたくないFieldに問い合わせられたら? GraphQLの弱点?
Query/Mutation/Subscription Queryで取得できるFieldを制限する方法 Mutationを実行できる条件を制限する方法 GraphQL-Rubyの公式に全て載っている 今日伝えたいこと:実行制御・取得制御 取得 変更 変化検知
Mutationの実行権限制御→ready? Mutationの実行制限の方法
公開用APIで表示するFieldを制限する方法
Type自体へのアクセスを制限する方法
GraphQL::Analysis::ASTを使用する connection_typeのmax_page_sizeを使用 クエリの深さとサイズを制限する方法
GraphQLってとっても便利! 公開APIとしても非常に優秀! クエリ楽しい!皆使おう! 最後に
https://techbookfest.org/product/5023805390979072 もっと知りたい方へ:無料でダウンロードできる本が!