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
facebook オフラインアクセス許可の廃止
Search
hidehigo
September 05, 2012
Technology
0
270
facebook オフラインアクセス許可の廃止
http://atnd.org/events/31210
こちらで発表した資料です。
facebookのオフラインアクセスが削除される経緯のまとめと、 つまづきどころをまとめました。
hidehigo
September 05, 2012
Tweet
Share
More Decks by hidehigo
See All by hidehigo
偶然の科学
hidehigo
0
160
オートモビリティ~自動車と移動の社会学~
hidehigo
0
150
Blockchain概説
hidehigo
0
320
ブロックチェーン概説@X−tech
hidehigo
1
1.2k
社内勉強会_プロジェクトマネジメントの2つのパラダイム〜予測型と経験型〜/20150710
hidehigo
0
8.4k
20150609LT_hidehigo.pdf
hidehigo
0
2.1k
スクラムの思想@社内勉強会
hidehigo
0
140
fantasticsの裏側.pdf
hidehigo
1
880
Other Decks in Technology
See All in Technology
Amazon Forecast亡き今、我々がマネージドサービスに頼らず時系列予測を実行する方法
sadynitro
0
200
rootlessコンテナのすゝめ - 研究室サーバーでもできる安全なコンテナ管理
kitsuya0828
3
400
minify の効果を最大限に引き出す TypeScript コードを書く
jsakamoto
2
120
LINEヤフーにおけるPrerender技術の導入とその効果
narirou
2
2.8k
プロダクト活用度で見えた真実 ホリゾンタルSaaSでの顧客解像度の高め方
tadaken3
0
290
4年で17倍に成長したエンジニア組織を支えるアーキテクチャの過去と未来
sansantech
PRO
1
3k
静的解析で実現した効率的なi18n対応の仕組みづくり
minako__ph
2
1.8k
セキュリティ運用って包括的にできていますか?SaaSを使って次のステップへ / Comprehensive Cyber Security Operations for Cloud Services Using SaaS
sakaitakeshi
0
220
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
30
14k
【LT】ソフトウェア産業は進化しているのか? #Agilejapan
takabow
1
130
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
170
日経電子版のStoreKit2フルリニューアル
shimastripe
2
170
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
693
190k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
GitHub's CSS Performance
jonrohan
1030
460k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
Rails Girls Zürich Keynote
gr2m
94
13k
Unsuck your backbone
ammeep
668
57k
Visualization
eitanlees
145
15k
Designing for humans not robots
tammielis
250
25k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Side Projects
sachag
452
42k
Making Projects Easy
brettharned
115
5.9k
Transcript
TechBuzz勉強会@9/5 - Confidential - Copyright © GaiaX Co. Ltd. All
rights reserved. offline access permissionの廃止 準備は大丈夫? 株式会社ガイアックス
自己紹介&会社紹介 • 株式会社ガイアックス • IT事業開発部長 • 肥後(@hidehigo) • ガイアックスの事業(facebook関連) •
GaiaX ソーシャルメディアラボ運営 • fantastics提供
3 ソーシャルメディア・マーケティング の研究機関 「マーケティングの中でソーシャルメディアをどう使うか?」をテーマに、 仮設を立て実践・調査を元に知見を貯めて、情報発信をしたり、自社 サービスの改善に活かしていく活動を行なっている。 規約 マーケティング 戦略 マニュアル・
使い方 ファン育成 データ・効果 ツール 活用術・TIPS 業務設計 効果測定・ ROI 傾聴 サービスの 仕組み 事例 キャンペーン 運用 企業 インタビュー アプリ アクティブ サポート CRM GaiaX ソーシャルメディア ラボ
4 外部メディア 講演会・勉強会・セミナー GaiaX ソーシャルメディア ラボ
5 書籍・雑誌 GaiaX ソーシャルメディア ラボ
6 ソーシャルメディア・マーケティングの ツール、運用業務のPKGを提供
本日のagenda • オフラインアクセス許可とは • tokenの種類とオフラインアクセス許可 • 弊社での利用事例 • オフラインアクセス許可は廃止予定 •
何度も延期 • facebookドキュメントの変遷 • (場合によっては)ハマリどころ • 対策の方法(軽く) • 設定をonにした時の変化 • どんな場合に対策した方がよいのか
オフラインアクセス使っている(いた)人~? • facebookの仕様は、頻繁に変更されますよね。 • この件に関しては、英語はともかく、日本語の情報 は、断片的で、経緯がまとまっている情報も見当た らなかったので、弊社での失敗談を交えてお話でき ればと思います。 • 皆さんの対策に役立ててもらえたら幸いです。
オフラインアクセス許可とは? ユーザーaccess token ユーザーからアプリ許可を得る際 に、もらう許可の種類(オフライン アクセス許可はその一つ) を伴ったtoken ページaccess token facebookページの情報取得、操作
ができる。 アプリaccess token アプリ固有のtoken(期限なし) アプリIDと共に予め与えられる
オフラインアクセス許可とは? • ユーザーのアクセスを起因として発生させるイベント については、ユーザーのaccess_tokenを用いれば ほとんど実現可能 • 他ユーザーのアクセス起因や、バッチ起因のイベン トについては、(発生タイミングが読めないため)該当 ユーザーのaccess_tokenは失効しているケースが 多い
• そのため、(これまでは)アプリ認証時にオフラインア クセス許可を得ておく必要がありました。
弊社での利用事例 • 弊社提供のアプリ「fantastics」では、facebookペー ジに「いいね」してくれたユーザーのアクション (facebookページへの投稿に対する「いいね」や、シ ェア)などを解析するために、バッチ起因でユーザー のアクションを収集しています。 • 現在数万人程度のユーザーのアクションを解析して おり、facebookへのAPIアクセスは数百万回/日、程
度になっています。
弊社での利用事例 GXサーバー facebook facebookページ facebookページ 管理者 投稿 フィード いいね シェア
いいね 1次波及 2次波及 定期的に取得(バッチ起因) ファン ファンの友達 ユーザーtokenを利用 要オフラインアクセス許可
廃止予定だよ • ところが、このオフラインアクセス許可は、facebook の方針により、廃止予定となっています • このオフラインアクセスの廃止予定に関する経緯と 、その時点の情報に惑わされないような情報提供が できたらと思います。
今は2012/10/3に予定されているよ(9/5時点) • この変更、たびたび延期されています。 • 2012/5/1 • オフラインアクセスの非推奨→廃止予定日(当初) • 5月頃? •
非推奨(deprecate)からあらためて削除(removal)の告知※1 • 7/5に延期 • 10/3に延期 ←イマココ
ここで注意 • 非推奨(deprecate)のドキュメント • https://developers.facebook.com/docs/offline-access-deprecation/ • このドキュメント、※1のタイミングで • https://developers.facebook.com/roadmap/offline-access-removal/ •
に変更になっています。(リダイレクトはされる) • また、このタイミングで、アプリ設定画面の設定項目も 変更になっていて、かつ設定が引き継がれない(弊社 調べ)、という事件が発生しました(ここ後程)
ハマリどころ? 5/1時点の設定項目 • 当初のアプリの詳細設定画面の設定項目の名称は • deprecate offline access
なんと、、 現在のドキュメントのキャプチャも古い。。 • 設定項目の名称が変更になった • deprecate offline access • →Removal
offline access permission 現在の設定項目名
もう一度確認してね • 「あれ~。60日トークン延長実装したはずなのに、う まくいってない」、という方 • この新しい項目がEnabledかもう1回確認してね。
対策として • 実際に変更しなければならないことは、当初からあまり変わっ ていません。参考情報情報としても軽めに。 • ①60日トークンへの延長(交換)処理を実装する • ユーザーtokenを交換する • https://graph.facebook.com/oauth/access_token
• のAPIを利用する • ②設定項目をEnableにする • この2ステップだけ。 • ドキュメントは対訳式で翻訳しましたので以下もご参考ください • http://d.hatena.ne.jp/hidehigo/
60日tokenについて • ユーザーtokenの話です。 • 60日tokenはドキュメント内では • long-lived access_tokenと表現されています。 • 60日tokenは、以下の方法で得られます
• 短い有効期限(2時間有効)のaccess_tokenを延長(交換)APIに投げ て取得 • この60日tokenは延長はできません。 • 新たに、短い有効期限のaccess_tokenを交換APIに投げる必要が あります • つまり、再度ユーザーのリクエストを必要とする、ということです。 • なので、延長というよりは、交換というイメージです。 • この時に返されるtokenの文字列は、前と同じこともあります。 • 60日tokenを交換APIに投げても延長できません。 • 同じtokenが返ってきます。でも延長されていません。
Enableにした際の変化 • 60日トークンが交換可能になる • offline_accesss許可を必要としてなかったアプリでもこの交換処理 は可能 • 新しくアプリ許可を求められるユーザーが見る画面では、「オ フラインアクセス許可」が表示されなくなる •
すでに取得しているオフラインアクセス許可つきのtokenは 引き続き使える(tokenのdebuggerでは期限なし表示)
細かいところ • 60日tokenを交換するために用いた短いtokenは期限内 (1~2時間)はそのまま利用できる。 • が、取得した60日tokenを優先して使う方がよいよね • すでに取得している期限なしのoffline access tokenは、そ
のまま利用できる • が、変更の実施日(現時点では10/3)を過ぎるとそこから60日に切り 詰められる • 60日tokenで、そのユーザーが管理しているページ access_tokenを取得すれば、期限切れしないページtoken を取得できる。 • もちろん、ユーザーのログアウトや、アプリ削除や、パスワー ド変更によって60日有効なtokenも無効になります。
Q. どんな場合に延長(交換)処理した方が よいの? • A.あらゆる場合 • これまでオフラインアクセス許可を取得していた=必須 • オフラインアクセス許可を利用していなかった •
でも、(設定項目をEnableにすれば)60日tokenは使える。 • サーバー側OAuth/クライアント側OAuthを利用している 場合 • 古いSDKを利用したネイティブアプリ • 新しいSDKにすればOK
Enjoy Developing your Apps • facebookのバグや仕様変更が頻繁で、追随するの が大変ですよね。。。 • 弊社でも、日々facebookの変更に振り回されていま す。。。
• そんな苦労話は個別で^^; • とはいえ、この変化を楽しみながら、みんなで情報 共有していきましょう。
25 facebook懇親会やりたいです。ぜひ連絡ください http://www.facebook.com/hidehigo ご清聴ありがとうございました。 ラボ風景(集中部屋)