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
スポーツ×GraphQL
Search
ufoo68
April 11, 2020
Programming
400
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
スポーツ×GraphQL
ufoo68
April 11, 2020
More Decks by ufoo68
See All by ufoo68
BlenderをCodexで動かす
ufoo68
1
590
改めて考えるOSSのあり方について
ufoo68
0
72
文法で学ばないJavaScript
ufoo68
0
87
Cookieとは?
ufoo68
1
97
今更ながら、開発現場での生成AI活用について
ufoo68
0
94
28歳独身エンジニア 婚活してみた
ufoo68
0
47
OpenAIでクッキー型を作る
ufoo68
1
78
初めて開発リーダーをやってみた話
ufoo68
0
160
M5Stack用の指紋認証デバイスを試す
ufoo68
0
940
Other Decks in Programming
See All in Programming
MySQLとPostgreSQLって何が違うの?
akagami
0
120
Pythonの実行はどこまで賢くなったのか? CPythonとPyPyから見る最適化のしくみ
curekoshimizu
0
180
Discordを用いたラボオートメーション関連情報収集の自動化
noguhiro2002
0
100
まずはプロンプトガイドを読もう、話はそれからだ
kiakiraki
1
160
How I Won Prize Money at a Hackathon Using Codex and Symphony Alpha
yasei_no_otoko
0
110
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
740
Built Our Own Background Agent at LayerX
layerx
PRO
10
5.8k
生成AIで帳票OCRが「簡単に」作れる時代になった?
kon_shou
0
1.1k
Claude CodeとAgentCore Gatewayを繋ぐ際の認証認可 / Authentication and authorization when connecting Claude Code with AgentCore Gateway
har1101
2
340
S3 を使うアプリケーションをローカル完結で動かすことに全力を注いでみた / Running S3 Apps Offline
contour_gara
0
550
片田舎のおっさん、 Swift Buildのダイアモンド問題解決の不具合修正PRを出すが、解決方法がキャッシュをしないようにすることであり、ビルド時間が伸びると言われてマージされないので高速化もする/swiftbuild
yimajo
0
200
freeeにおけるEvalsの実践例の紹介
freee
PRO
0
130
Featured
See All Featured
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
280
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.5k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Claude Code のすすめ
schroneko
67
230k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
57k
HDC tutorial
michielstock
2
800
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
480
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
380
Mind Mapping
helmedeiros
PRO
1
320
Transcript
スポーツ×GraphQL とりあえずネタがなかった
自己紹介 • 名前 ◦ ufoo68 • やってること ◦ AWSを使った開発 ◦
スポーツIoTLTの主催 • 最近とった資格 ◦ ソリューションアーキテクトアソシエイト ◦ Alexaスキルビルダー
宣伝
ときは二日前
最初に 毎度のことながら ネタがなかった
最初に考えたこと MiBand4を買ったのでハックしてみよう
しかし 前回のスポーツIoTLTとIoTLT60回目にて 流石に同じネタをやるのは面白くない。。。
次に考えたこと 最近勉強してるGraphQLでスポーツネタできないかな
探したらなんかあった
順を追って説明
TheSportsDB スポーツ選手・チーム・イベントに関するデータを取得できるAPI
やろうと思ったこと 公式のGraphQL wrapperを使ってSportsDBのデータを取得してみる
ここからGraphQLについての話
まずGraphQLとは? • サーバとクライアント間の通信のための使用言語 • FaceBookの研究チームが提唱 • REST APIに変わる新たな技術(?)
誤解してたこと 既存のAPIサーバとクライアント間の通信の仕様が変わるのか? クライアント API サーバ クエリを投げる クエリを解釈 レスポンスを返す
本当は違った GraphQLというものが両者を仲介するようになる クライアント API サーバ クエリを投げる クエリを解釈してリクエストを投げる GraphQLサーバ リクエストを受け取る
実際にやってみた
ローカルでGraphQLサーバを実行
Postmanでクエリを実行
スキーマのタイプを調べるクエリ query { __schema { types { name description }
} } 試しにこのPlayerってやつを とってみよう
Playerでとれる情報を調べる query { __type(name:"Player") { name fields { name }
} }
適当な選手の情報を取得 query { player(id:34145937) { name sportType nationality } }
以上
まとめ • MiBand4の話は前回のスポーツIoTLTと本家IoTLT vol.60のn0bisukeさんの資 料を見よう • スポーツIoTLTのIoTはInternet or Thingsなのでこんな話もしていい •
GraphQLはREST APIとはまた立ち位置が違う • スポーツ関係ない話でごめんなさい