Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Introducing GraphQL-Ruby
Search
yotuba088
October 21, 2020
Programming
1.7k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Introducing GraphQL-Ruby
iCARE Dev Meetup #14 でのLT資料です。
https://icare.connpass.com/event/189356/
yotuba088
October 21, 2020
More Decks by yotuba088
See All by yotuba088
How to improve event attraction for engineers
yotuba088
0
170
Trying to upgrade Rails
yotuba088
2
1.2k
Other Decks in Programming
See All in Programming
Simple Storage Service(S3) is not simple
iwatsukayura
0
190
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
350
モジュールの視点からSwiftを読み解く #iosdc
s_shimotori
0
340
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
900
Workers Cache を知る
syumai
0
330
動作中のプログラムの中身をリアルタイムに覗く / Realtime Debugger for CSharp with Roslyn
prota
1
1.8k
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
2.8k
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
440
AI Agent時代のリアーキテクチャ戦略と実践
hokaccha
9
5.4k
パーソナライズPodcastを作った話
repunit11
0
120
難しいけど、読めた。- OSSの入口に立った話。
sts11142
0
140
Androidだけじゃない、DroidKaigiで広がった私の技術スタック
akkeylab
0
120
Featured
See All Featured
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
450
Balancing Empowerment & Direction
lara
6
1.3k
Exploring anti-patterns in Rails
aemeredith
4
520
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
860
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
300
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
Code Reviewing Like a Champion
maltzj
528
40k
Marketing to machines
jonoalderson
1
5.8k
RailsConf 2023
tenderlove
30
1.6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
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 もっと知りたい方へ:無料でダウンロードできる本が!