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
Django for Data Science (Boston Python Meetup, March 2025)
wsvincent
0
320
Chrome Extension Techniques from Hell
moznion
1
160
[NG India] Event-Based State Management with NgRx SignalStore
markostanimirovic
1
110
「影響が少ない」を自分の目でみてみる
o0h
PRO
2
990
Coding Experience Cpp vs Csharp - meetup app osaka@9
harukasao
0
730
Firebase Dynamic Linksの代替手段を自作する / Create your own Firebase Dynamic Links alternative
kubode
0
230
Building a macOS screen saver with Kotlin (Android Makers 2025)
zsmb
1
140
PHPで書いたAPIをGoに書き換えてみた 〜パフォーマンス改善の可能性を探る実験レポート〜
koguuum
0
130
Devin入門と最近のアップデートから見るDevinの進化 / Introduction to Devin and the Evolution of Devin as Seen in Recent Update
rkaga
9
4.8k
リアルタイムレイトレーシング + ニューラルレンダリング簡単紹介 / Real-Time Ray Tracing & Neural Rendering: A Quick Introduction (2025)
shocker_0x15
1
290
Compose Hot Reload is here, stop re-launching your apps! (Android Makers 2025)
zsmb
1
480
生成AIを使ったQAアプリケーションの作成 - ハンズオン補足資料
oracle4engineer
PRO
3
200
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.3k
How to train your dragon (web standard)
notwaldorf
91
6k
Agile that works and the tools we love
rasmusluckow
328
21k
Gamification - CAS2011
davidbonilla
81
5.2k
GitHub's CSS Performance
jonrohan
1030
460k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
For a Future-Friendly Web
brad_frost
176
9.7k
Six Lessons from altMBA
skipperchong
27
3.7k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
119
51k
Git: the NoSQL Database
bkeepers
PRO
430
65k
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 もっと知りたい方へ:無料でダウンロードできる本が!