我正在嘗試爲客戶端的fb頁創建一個簡單的,僅支持html的facebook應用程序。我想使用django的flatpages,以便客戶和他的員工可以通過他們網站的django管理員更改應用程序的內容。問題是Django返回403「CSRF驗證失敗,請求中止。」當Facebook嘗試發送自己的POST信息並訪問該應用的網址時出錯。使用flatpages創建一個簡單的Facebook應用程序,但由signed_request造成的CSRF問題
我已經知道@csrf_exempt裝飾器,但我不知道如何將它應用到flatpage視圖,因爲它在django.contrib代碼中。此外,我只想在視圖被要求調用特定的facebook.html模板(而不是default.html模板)時禁用csrf保護。例如,如果碰巧有一個{%crsf_exempt%}模板標籤,那將是完美的。
任何人都可以想出一種方法來解決這個問題?或者,也許我應該放棄使用django-flatpages服務Facebook應用程序的想法?
不完全。我重新提出了這個問題。謝謝 – Marconius 2011-03-24 14:39:26
您是否嘗試過我的解決方案?我有這個完全相同的問題。 – pyeleven 2011-03-24 14:44:57
的事情是,我想用django_flatpages來製作Facebook的「畫布」,但我不知道如何將@Crsf_exempt修飾器添加到flatpages視圖而不會與django.contrib代碼搞混。如果我無法弄清楚,我可能只會製作我自己的django應用程序,並在其視圖方法上實施您的解決方案。 – Marconius 2011-03-24 16:11:30