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
140
Trying to upgrade Rails
yotuba088
2
1.2k
Other Decks in Programming
See All in Programming
Instrumentsを使用した アプリのパフォーマンス向上方法
hinakko
0
140
REALITY コマンド作成チュートリアル
nishiuriraku
0
110
Compose Hot Reload is here, stop re-launching your apps! (Android Makers 2025)
zsmb
1
580
UMAPをざっくりと理解 / Overview of UMAP
kaityo256
PRO
2
1.1k
実践Webフロントパフォーマンスチューニング
cp20
42
9.3k
Unlock the Potential of Swift Code Generation
rockname
0
280
Browser and UI #2 HTML/ARIA
ken7253
2
150
エンジニア向けCursor勉強会 @ SmartHR
yukisnow1823
2
10k
設計の本質:コード、システム、そして組織へ / The Essence of Design: To Code, Systems, and Organizations
nrslib
10
3.5k
「影響が少ない」を自分の目でみてみる
o0h
PRO
2
1.2k
Empowering Developers with HTML-Aware ERB Tooling @ RubyKaigi 2025, Matsuyama, Ehime
marcoroth
2
840
ComposeでWebアプリを作る技術
tbsten
0
120
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Designing for Performance
lara
608
69k
Visualization
eitanlees
146
16k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.2k
Optimizing for Happiness
mojombo
378
70k
A designer walks into a library…
pauljervisheath
205
24k
What's in a price? How to price your products and services
michaelherold
245
12k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Typedesign – Prime Four
hannesfritz
41
2.6k
Optimising Largest Contentful Paint
csswizardry
37
3.2k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
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 もっと知りたい方へ:無料でダウンロードできる本が!