ruby スクリプトと Koala gem を使用して、1 日 1 回 Facebook に投稿したいと考えています。一度設定すれば、アクセス トークンを変更し続ける必要がなくなります。アクセストークンに関するいくつかの投稿とFacebookのドキュメントを読んだ後、私は以下を実装しました:
- Facebook アプリを作成しました
- Graph API Explorer を使用して自分用のアクセス トークンを取得しました - これは約 2 時間しかかかりません
- 次のスクリプトを使用して、短期トークンを 2 か月間有効な長期トークンに交換しました。
https://graph.facebook.com/oauth/access_token? client_id=APP_ID& client_secret=APP_SECRET& grant_type=fb_exchange_token& fb_exchange_token=EXISTING_ACCESS_TOKEN
- Facebook ウォールに投稿する次のレーキ タスクを作成しました。
トークン = "CAAFlZAPhVBO8..." @graph = コアラ::Facebook::API.new(トークン) @graph.put_connections("me", "feed", :message => "私のメッセージ!")
- herokuスケジューラを使用してrakeコマンドをスケジュールしました
このセットアップのすべてで、私のスクリプトは実際に機能します! スケジューラに基づいて、毎日ウォールに書き込みます。
私の質問は次のとおりです。このセットアップでは、グラフ API エクスプローラーを使用して手動で新しい短期アクセス トークンを作成し、それを使用して 2 か月ごとに長期アクセス トークンを取得する必要があります。また、y スクリプトの token = "blah blah" ステートメントを手動で変更する必要があります。これはまったく回避できますか?作成したアプリにウォールへの投稿を許可しました。Koala (または他の gems/libs) を使用して、スクリプト内で新しいアクセス トークンを自動的に取得する方法はありますか?