解決 Facebook Oauth 「這個網址的網域未包含在應用程式的網域中」錯誤

「有效的 OAuth 重新導向 URI」已經設定重新導向 URL (callback url) 卻仍然遇到「這個網址的網域未包含在應用程式的網域中」錯誤。解決方式將網址的 (GET) 查詢變數移除,再儲存。

Facebook 登入時遇到錯誤視窗



解決方式:

1. Facebook for Developers

2. 切換到要設定的應用程式

3. 點選「產品」→「Facebook 登入」→「設定」


4. 勾選「強制使用 HTTPS」 (2019/8/1 更新)

如果沒有勾選會遇到錯誤訊息:「Facebook 偵測到 XXX 傳遞資訊所使用的網路連線並不安全。在 XXX 更新帳號安全設定之前,你將無法使用 Facebook 帳號登入此應用程式。」XXX 是應用程式名稱


5. 「有效的 OAuth 重新導向 URI」輸入網址
注意網址格式,需要將將網址的 (GET) 查詢變數移除。
例如完整網址是
https://your.domain/auth/facebook/callback&scope=email&client_id=123456789
(1) 如果啟用「對重新導向 URI 使用 Strict 模式」,「有效的 OAuth 重新導向 URI」輸入網址請改成
https://your.domain/auth/facebook/callback
(2) 如果沒有啟用「對重新導向 URI 使用 Strict 模式」,允許比較彈性的網址格式。「有效的 OAuth 重新導向 URI」輸入的網址除了可以使用上方提到的網址格式,也可以改成
https://your.domain/

其他可能錯誤訊息

使用上述方式解決

  • 重新導向 URI 並未列入應用程式用戶端 OAuth 設定的許可名單中:網址已遭封鎖: 這個重新導向失敗了,因為重新導向 URI 並未列入應用程式用戶端 OAuth 設定的許可名單中。請確定已開啟用戶端和網站 OAuth 登入,並將你所有的應用程式網域新增為有效的 OAuth 重新導向 URI。


參考資料:




留言