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
shorterql
Search
poccariswet
November 03, 2018
Programming
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
shorterql
fallLT_aizu
poccariswet
November 03, 2018
More Decks by poccariswet
See All by poccariswet
rust for web app
poccariswet
2
400
APNG maker on wasm
poccariswet
1
220
past and future
poccariswet
0
100
ncursesを学ぼう
poccariswet
0
88
i_and_go
poccariswet
0
81
editor
poccariswet
0
120
さぁ、深夜ラジオを聴こう!
poccariswet
1
140
Aizu-Go
poccariswet
1
180
Other Decks in Programming
See All in Programming
GraphRAGのKnowledge Graphを 直接!見る/View-GraphRAG's-KnowledgeGraph-directly!
tyumugi1113
1
340
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
150
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
140
AgentCore CLI で進化した AWS での AI エージェントの作り方 : 必要な機能を必要な時に
icoxfog417
PRO
3
350
wkhtmltopdfの次どうするか問題2026
willnet
2
1.4k
スマートフォンでモールス信号を送受信する 〜スマートフォンのLEDとカメラで作る光通信の設計と実装〜
atsuki_seo
0
130
SREの越境 / SRE Collaboration
y0hgi
2
230
thread_parallel_with_free-threaded_Python_and_NumPy.pdf
riku_sakamoto
0
340
JPUG勉強会 OSSデータベースの内部構造を理解しよう(第2回)
oga5
0
260
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
490
変化を抱擁するドキュメントの作り方 - ビジネスルール駆動開発がもたらす、コードとの新しい関係
ioki
2
210
速く作れる。その次は、速く確かめられる開発へ 〜AIネイティブ開発を支える、Shift Down〜 / Can build fast. Next, moving to development where we can verify fast.
rkaga
5
3.3k
Featured
See All Featured
The agentic SEO stack - context over prompts
schlessera
0
940
Producing Creativity
orderedlist
PRO
348
41k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Navigating Team Friction
lara
192
16k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
65k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
510
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
940
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
870
Transcript
shorterql 2018/11/3
- soeyu - 3年 - Zli サークル - 趣味: 深夜ラジオ(bananamoon)
github 2 introduction
3 shorterql ?
4 url shortener + graphql api
5 url shortener + graphql api
6 url shortener 6 短縮URL(たんしゅくユーアールエル)とは、長い文字列のURLを短く したものである。リダイレクトを利用して本来の長いURLに接続する。 (wiki) - goo.gl (
3月で終了) - Firebase Dynamic Links (FDL) - Ow.ly - Bitly https://goo.gl/bQkBfu https://github.com/poccariswet/shorterql
7 Using url shortener 7 - URL の 共有 -
SNSの文字列制限 - bot等のメッセージフォーマットが崩れないように - サービスの終了に伴い、短縮URLと元となるURLの結びつき がなくなり、リンク切れになる可能性 - ドメインカスタムされたURLができない デメリット 最近のハロウィーン回 ” 2018年10月26日(金) ”
8 と言ったのが url shortener です
9 url shortener + graphql api
10 url shortener + graphql api
11 GraphQL 11 - クライアント・サーバ間 API用のクエリ言語でありランタイム - クライアントがサーバーからデータを取得,変更,購読できるようにするための データ言語 -
リアルタイム処理が可能(購読[サブスクリプション]) - REST API との違い (https://www.slideshare.net/keisuketsukagoshi/rest-api-graphql) ref • https://graphql.org/ 「チャーハン握り一番早く食 べられるのは?!の回」 ” 2018年9月21日(金) ”
12 GraphQL 3種類のオペレーションタイプ 12 Query 取得 Mutation 更新 Subscription 購読
「口笛を頑張る日村さん」 ” 2018年9月14日(金) ”
13 GraphQL メリット 13 - クライアントが欲しい情報だけをqueryで指定することが可能 query request response https://developer.github.com/v4/explorer/
- ドキュメント生成が楽 - 一回のリクエストで深い階層のデータまで取得可能 example スキーマ定義
14 GraphQL どーゆーときに使う? 14 https://aws.amazon.com/jp/campaigns/manga/vol4-3/
15 以上が graphqlと url shortenerです
16 url shortener + graphql api = shorterql
17 実装までの経緯 - url shortener: 夏のインターンで実際に調べたり、利用する 機会があってロジック等が気になったので、作ってみたくなった - GraphQL: 単に興味があって今回で知見を得体のと使ってみ
たかった 17 「オススメのお菓子を求め て!の回」 ” 2018年9月28日(金) ”
- LongURL をPostする - ShortURLを生成し、responseする 18 主な機能 18 「オススメのお菓子を求め て!の回」
” 2018年9月28日(金) ” - ShortURLを作る際に生成された hash値をIDに ShortURLの情報をgetできる 実装言語: go
19 実装 19 • Redis storage • Create Hash •
Redirect handler • GraphQL handler 「日村&オークラを笑わせろ!2018 Summer!」 ” 2018年8月31日(金) ”
20 Redis Storage 20
21 Create hash 21 • uuid ◦ 一意の値を生成 ◦ https://github.com/google/uuid
22 Redirect handler 22
23 GraphQL handler 23 - request body から query の取得
- そのqueryを実行する関数 へ飛ばす - 実行して得たresultをエン コードして出力
24 GraphQL 3種類のオペレーションタイプ 24 Query 取得 Mutation 更新 Subscription 購読
「口笛を頑張る日村さん」 ” 2018年9月14日(金) ”
25 GraphQL handler 25 Query (取得)
26 GraphQL handler 26 request response
27 GraphQL handler 27 Mutation (更新)
28 GraphQL handler 28 request response
29 まとめ 29 - 短いhash値を作るのがちょっと大変 (id(1...n) を生成してbase62 encodeすればいい?) - 公式リファレンスにGraphQLのexampleやチュートリアルがに
あるのでとっつきやすかった - 個人的にこれからサービスを作ろうと思っているので、それに graphql の apiを取り入れていければいいなと思った。 「設楽流、さくらんぼの種の かっこいい出し方!回」 ” 2018年6月1日(金) ”
30 最後に 30 - graphql チートシート (https://devhints.io/graphql) - Web app
graphql (https://wehavefaces.net/learn-golang-graphql-relay-1-e59ea 174a902) - Github graphql client (https://developer.github.com/v4/explorer/) - Bananamoon picture ref - (https://www.tbsradio.jp/banana/)
“ ご静聴ありがとうございました。 31