2016-07-28 130 views
0

我正在致力於facebook選項卡應用程序。我需要知道用戶何時從其頁面上卸載選項卡應用程序,以便我可以更新我的數據庫。雖然Facebook文檔沒有指定如何完成,我讀了Facebook會ping你的deauthorize回調url。Facebook pinging使用錯誤的請求取消授權回調網址

在facebook文檔中,他們說他們會通過發送signed_request(https://developers.facebook.com/docs/facebook-login/manually-build-a-login-flow#logout)的發佈請求來ping網址,但是每當我從頁面中刪除tab應用程序時,都會向我的回調url發送GET請求,而無需任何signed_request,這並不能幫助我知道應用程序卸載了哪個頁面。

Access log from my apache server

302重定向正在發生的事情,因爲沒有簽名的請求。

我該怎麼辦?我無法查詢數據庫中的所有頁面以找出哪個標籤頁已卸載,因爲它不會擴展,我需要manage_pages權限,並且如果沒有簽名請求,就無法知道該請求是否已發送從Facebook。

+0

我不確定在這種情況下甚至應該調用取消授權回調 - 您指的是在_users_卸載您的應用時。刪除頁面標籤應用程序並不是一回事。 – CBroe

+0

是的,我一直認爲只有在用戶卸載應用程序時纔會調用deauthorize回調函數,但是因爲我在網上看到人們說facebook會在刪除tab應用程序時使用它,所以我決定嘗試一下。 http://www.yiiframework.com/wiki/379/facebook-deauthorize-callback-url-and-its-response-data/ Facebook做你從我所看到的,但沒有任何信息ping你。如果你知道任何其他的方式來獲得通知,當一個頁面管理員刪除你的應用程序,它也會幫助我。 – IvanF

回答

1

嘗試將回調URL更改爲SSL。今年早些時候我們遇到了這個問題,當發送到http://時,它始終是一個GET請求,但是一旦我們將其更改爲https://,它將變回POST體內的signed_request POST請求。