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
コンテナをたくさん詰め込んだシステムとランタイムの変化
makihiro
1
130
talk-with-local-llm-with-web-streams-api
kbaba1001
0
180
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
120
テストケースの名前はどうつけるべきか?
orgachem
PRO
0
130
これが俺の”自分戦略” プロセスを楽しんでいこう! - Developers CAREER Boost 2024
niftycorp
PRO
0
190
PHPで作るWebSocketサーバー ~リアクティブなアプリケーションを知るために~ / WebSocket Server in PHP - To know reactive applications
seike460
PRO
2
190
たのしいparse.y
ydah
3
120
ゆるやかにgolangci-lintのルールを強くする / Kyoto.go #56
utgwkk
1
370
テスト自動化失敗から再挑戦しチームにオーナーシップを委譲した話/STAC2024 macho
ma_cho29
1
1.3k
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
200
42 best practices for Symfony, a decade later
tucksaun
1
180
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
140
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Facilitating Awesome Meetings
lara
50
6.1k
Thoughts on Productivity
jonyablonski
67
4.4k
Done Done
chrislema
181
16k
Side Projects
sachag
452
42k
4 Signs Your Business is Dying
shpigford
181
21k
Rails Girls Zürich Keynote
gr2m
94
13k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
Why Our Code Smells
bkeepers
PRO
335
57k
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 もっと知りたい方へ:無料でダウンロードできる本が!