我想使用YUI上傳器將文件上傳到Django視圖。發送Django CSRF Cookie與YUI上傳器請求
但是,我在CsrfViewMiddleware中收到403錯誤。我已經確定問題是由於Flash上傳程序(即YUI上傳程序使用的)未在文件上載請求中發送CSRF cookie。
YUI上傳器的uploadAll()函數允許以對象形式與上傳請求一起發送附加數據。由於CSRF cookie可以很容易地檢索到,因此我試圖通過uploadAll()函數將cookie添加到請求中,但我不完全確定發送它的格式是什麼,以便CsrfViewMiddleware可以找到它期望的cookie 。這不起作用:
var cookie = YAHOO.util.Cookie.get('csrftoken'); uploader.uploadAll(url, 'POST', { csrfmiddlewaretoken: cookie });
任何有識之士將不勝感激!
你說得對。我最終通過引入層固定它的中間件在使用正確的cookie到達CSRF中間件之前手動更新請求對象。 – Derek 2010-06-24 22:35:37