想用自動化工具(如 n8n、Python、NoCode 工具)自動發文到 Facebook 粉絲專頁,卻老是遇到 token 失效?
本篇文章手把手教你如何正確取得 Facebook 粉絲專頁的長期 Page Access Token,讓你的 API 發文流程穩定不中斷!
目錄
- 什麼是 Facebook Page Access Token?
- 為什麼要用「長期」Token?
- 取得長期 Page Access Token 的完整流程
- 問題排查&常見 Q\&A
一、什麼是 Facebook Page Access Token?
Page Access Token 是用來讓應用程式(App)或自動化程式代表你的粉專進行各種操作(如自動發文、取得貼文、分析數據)的憑證。
依照 Facebook 官方規範,一般權杖(token)預設有效期很短(1小時~2小時),適合開發測試,但無法長期穩定推播。
二、為什麼要用「長期」Token?
- 短期 token 很快失效,自動發文會斷線
- 長期 token 最長有效期 60 天,適合自動化推播、聊天機器人等需求
- 節省頻繁重新認證的麻煩
三、取得長期 Page Access Token 的步驟
Step 1:申請 Facebook 開發者帳號 & 建立 App
- 前往 Facebook for Developers
- 註冊開發者帳號,並建立一個新的 App
Step 2:使用 Graph API Explorer 取得短期 User Access Token
進入 Graph API Explorer
選擇你的 App
點選「取得權杖」>「編輯權杖」
勾選以下必要權限:
pages_manage_posts
pages_read_engagement
pages_manage_metadata
pages_show_list
按下「取得權杖」,複製你的 短期 User Access Token
Step 3:將短期 User Token 換成長期 User Token
打開終端機(或 Postman),執行下方指令(請替換你自己的資訊):
curl -X GET "https://graph.facebook.com/v23.0/oauth/access_token?grant_type=fb_exchange_token&client_id=你的AppID&client_secret=你的AppSecret&fb_exchange_token=你的短期user_access_token"
- 取得回傳的
"access_token"
(這就是長期 user access token,約 60 天有效)
Step 4:用長期 User Token 取得 Page Access Token
用長期 user access token 執行下方指令:
curl "https://graph.facebook.com/v23.0/me/accounts?access_token=你的長期user_access_token"
- 回傳會列出你管理的所有粉專,每一筆資料都會有一組
"access_token"
這組就是該粉專的長期 page access token!
Step 5:驗證 Page Access Token 發文功能
你可以直接測試自動發文(以 cURL 為例):
curl -X POST "https://graph.facebook.com/v23.0/粉專ID/feed" \
-d 'message=這是自動發文測試' \
-d 'access_token=你的page_access_token'
四、常見問題與排查
Q1. 為什麼權杖很快就失效?
A:你用的是短期 token,請務必照上述流程換成長期 token。
Q2. 權杖過期怎麼辦?
A:重複以上流程即可再次取得新的長期 token。
Q3. 發文失敗出現權限錯誤?
A:請檢查 App 是否有正確啟用 pages_manage_posts
、pages_read_engagement
等權限,且你是粉專管理員。
Q4. 可以把這組 page access token 填給 n8n、自動化程式用嗎?
A:可以!這正是 Facebook 官方推薦的自動推播做法。
五、延伸閱讀
六、總結
只要依照本篇教學步驟操作,你就能輕鬆取得 Facebook 粉絲專頁的長期 page access token,
讓你的自動發文服務穩定不中斷,再也不用擔心權杖失效!