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
外部APIとズブズブな開発どうしてますか?
Search
kin29
September 15, 2023
Programming
2.2k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
外部APIとズブズブな開発どうしてますか?
PHPカンファレンス沖縄2023 トラックB 12:00~
kin29
September 15, 2023
More Decks by kin29
See All by kin29
【Symfony超入門】コマンドだけでCRUD画面を作るチート法
kin29
0
910
めんそ〜れ!モブプロ!!!
kin29
0
850
社内パッケージの再利用にSatisを使っている話.pdf
kin29
0
1.4k
Other Decks in Programming
See All in Programming
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
910
機械に任せるテスト、人が見るテスト ⽣成AIで引き直した、運⽤保守フェーズの線引き
dske104
0
160
Ghostty + Neovimで作る 透明でカッコ良い開発環境
j341nono
0
150
【加筆修正版】Laravel のアプリケーションをどこにデプロイするか #phpcon_ehime
akase244
0
150
ジョジョの世界をXRで再現する
mofurune
0
120
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
440
MVNOの申込からeSIM開通までをiOSアプリでつなぐ- 本人確認・MNP・通信事業者基盤をまたぐ実装
satotakeshi
0
540
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
130
R8 の設定見直しでアプリサイズ削減
andpad
0
150
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
550
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
450
Unity6 URPによる海底をテーマにしたVJシステムの解説 | Unity Shader 完全に理解した 勉強会
gam0022
0
330
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.9k
Making Projects Easy
brettharned
120
6.8k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.3k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Amusing Abliteration
ianozsvald
1
330
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
560
Paper Plane (Part 1)
katiecoart
PRO
2
11k
Navigating Team Friction
lara
192
16k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
790
It's Worth the Effort
3n
188
29k
Prompt Engineering for Job Search
mfonobong
0
480
WCS-LA-2024
lcolladotor
0
840
Transcript
外部APIとズブズブな開発 どうしてますか? 志賀彩乃(@kin29ma_n)
自己紹介 • 志賀彩乃(@kin29ma_n) • 株式会社カルテットコミュニケーションズ ◦ 愛知県名古屋市 ◦ PHPer大募集中です ◦
会社に入ってSymfonyはじめました • 趣味: ペチコン/PHPerKaigi行くこと • 息子(3) • 山口→ 宮崎 → 愛知
話すこと • API → Web API • 外部APIを使う上での失敗とその対処法 ◦ あるある①:
APIアップデートのキャッチアップ漏れ ◦ あるある②: APIリファレンスに情報が載ってない ◦ あるある③: 急にAPIやエンドポイントが使えなくなる 話さないこと • 外部APIの使用方法 • PHPな話
ではさっそく これがベストだと思っていないので、 良い方法があればぜひ教えてください🙇🙇🙇
外部APIを使う上でのあるあるな失敗とその対処法 • あるある①: APIアップデートのキャッチアップ漏れ 👈 • あるある②: APIリファレンスに情報が載ってない • あるある③:
急にAPIやエンドポイントが使用不可になる
あるある①: APIアップデートのキャッチアップ漏れ BEFORE 約10個の媒体APIのアップデート情報のキャッチアップを、 1人のスーパー開発者に依存していました。 \本当にありがとうございました 🙇/ ・G⚫ogle ・Yah⚫o Search
・Yah⚫o Display ・M⚫ta ・旧T⚫itter ・L⚫NE ・TikT⚫k ・S⚫rtNews ・Micr⚫Soft ・fre⚫e ・G⚫ogle Analytics
あるある①: APIアップデートのキャッチアップ漏れ AFTER 約10個の媒体APIのアップデート情報のキャッチアップを、 月に1回、3人で行う(=1人あたり3~4個) ・Yah⚫o Search ・旧T⚫itter ・S⚫art News
・Tikt⚫k ・G⚫ogle ・L⚫NE ・Micr⚫Soft ・Yah⚫o Display ・M⚫ta ・G⚫ogle Analytics ・fre⚫e
あるある①: APIアップデートのキャッチアップ漏れ 具体的な方法 • 新しいAPIバージョンがでていれば、GitHub Issuesを立てる ◦ キャッチアップの方法 ▪ リリースノート(RSSフィード)
▪ メール ▪ → 専用Slackチャンネルに流す • 廃止日やサポート終了日が近いものは優先度高めで対応する
外部APIを使う上でのあるあるな失敗とその対処法 • あるある①: APIアップデートのキャッチアップ漏れ • あるある②: APIリファレンスに情報が載ってない 👈 • あるある③:
急にAPIやエンドポイントが使用不可になる
あるある②: APIリファレンスに情報が載ってない 動画(VIDEO)の時のレスポンスしか分からない。 画像の時のレスポンスが知りたい!
あるある②: APIリファレンスに情報が載ってない 対処法 • APIを叩く(cURL, Postman等) • 実際にそのAPIを使っているであろう画面にて、デベロッパーツールでリク エスト/レスポンスを見る
あるある②: APIリファレンスに情報が載ってない 対処法 • APIを叩く(cURL, Postman等) • 実際にそのAPIを使っているであろう画面にて、デベロッパーツールでリク エスト/レスポンスを見る👈
あるある②: APIリファレンスに情報が載ってない 対処法 • APIを叩く(cURL, Postman, API Tester等) • 実際にそのAPIを使っているであろう画面にて、デベロッパーツールでリク
エスト/レスポンスを見る👈 ◦ ①実際にそのAPIを使っているであろう画面の目星をつける ◦ ②デベロッパーツール > ネットワークを開く ◦ ③該当APIエンドポイント(または似ているもの)を見つけ、リクエスト/レ スポンスを見る
あるある②: APIリファレンスに情報が載ってない ①実際にそのAPIを使っているであろう画面の目星をつける 例)静止画の編集画面、静止画を表示させている画面など \推理力/
あるある②: APIリファレンスに情報が載ってない ②デベロッパーツール > ネットワークを開く
あるある②: APIリファレンスに情報が載ってない ③該当APIエンドポイントを見つけ、 リクエスト/レスポンスを見る
あるある②: APIリファレンスに情報が載ってない ③該当APIエンドポイントを見つけ、 リクエスト/レスポンスを見る \静止画の時のレスポンスも把握できた🎉/
外部APIを使う上でのあるあるな失敗とその対処法 • あるある①: APIアップデートのキャッチアップ漏れ • あるある②: APIリファレンスに情報が載ってない • あるある③: 急にAPIエンドポイントが使用不可になる
👈
あるある③: 急にAPIエンドポイントが使用不可になる 直近でほんとにあった怖い話 「〇〇の機能が使えません」というお問い合わせをいただく →原因調査すると、昨日まで使えてたAPIエンドポイントが急に使えなくなって いた。
あるある③: 急にAPIやエンドポイントが使用不可になる 対処法 • 防ぐことは難しい • 発生した時の解決法 ◦ ログを見る →
「エラーメッセージ」を読む ◦ 「エラーメッセージ」でググる ▪ 公式のリリースノートやAPIリファレンス ▪ 媒体のフォーラム ▪ GitHub Issues ▪ 個人サイトの記事 ◦ ChatGPTに聞く
あるある③: 急にAPIやエンドポイントが使用不可になる 対処法 • 防ぐことは難しい • 発生した時の解決法 ◦ ログを見る →
「エラーメッセージ」を読む ◦ 「エラーメッセージ」でググる ▪ 公式のリリースノートやAPIリファレンス ▪ 媒体のフォーラム 👈 ▪ GitHub Issues ▪ 個人サイトの記事 ◦ ChatGPTに聞く
あるある③: 急にAPIやエンドポイントが使用不可になる 媒体のフォーラムにて同じ状況&解決方法を記載してくれてる方がいた →無事解決しました🎉🎉🎉 \超感謝😭!!!/
まとめ • APIとズブズブなのは手がかかる • APIがないと作れない機能がある ◦ APIを提供してくれて、ありがとう! • 困った時に助けてくれる人はいる! ◦
情報提供してくれた人に感謝を伝えよう!
まとめ • APIとズブズブなのは手がかかる • APIがないと作れない機能がある ◦ API提供してくれて、ありがとう! • 困った時に助けてくれる人はいる! ◦
情報提供してくれた人に感謝を伝えよう! 助け合いの世界🤝
助けてくれる or 助け合いたいPHPerの方、大募集中です🙌🙌🙌 https://quartetcom.co.jp/recruit/engineer/
ご清聴ありがとうございました。 みなさまのAPI攻略法の共有お待ちしています。