沒有人有Django的+ SWFUpload任何簡單的代碼示例?我已經在我的PHP應用程序中完美工作,但Django讓我頭疼。Django + SWFUpload的代碼示例?
回答
不幸的是我不能給你任何非常詳細的代碼示例,但我有相當多的經驗與SWFUpload的+ Django的工作(相片分享網站,我的工作)。無論如何,這裏有幾個要點,希望能幫助你在你追求幸福DjSWF :)
您將要使用的cookie插件(當然,如果你正在使用某種形式的基於會話的認證[如
django.contrib.auth
,並關心誰上傳了什麼)。的餅乾插件從餅乾作爲POST發送數據,所以你必須找得到這回
request.COOKIES
(process_request
中間件在request.POST
在特定網址上尋找一個settings.SESSION_COOKIE_NAME
並轉儲到request.COOKIES
作品起到了很好的一些方法這個:)另外,請記住,你必須回東西在響應身體的SWFUpload將其識別爲一個成功上傳的嘗試。我相信這已經在SWFUpload的最新測試版改變了,但無論如何,它的建議只是堅持東西在那裏,像「OK」。對於故障,請使用類似
HttpResponseBadRequest
之類的東西。最後,如果您無法找到他們,上傳的文件是在
request.FILES
:)
如果您有什麼困惑我還沒有涉及,隨意張貼的東西更詳細我很樂意提供幫助。
這是一個非常糟糕的問題的絕佳答案。第(1)點的第二段特別有助於我。謝謝。 – bouvard 2009-05-12 03:46:16
的Django版本的樣品的SWFUpload的:
http://github.com/naltimari/django-swfupload-samples/tree/master
只要uploadify。好主意,但它只是越野車,尤其是在Windows上。
以下是我修復此問題(即我上傳在Firefox中未能以302重定向)具體的Django的實現。
在我最初認爲它與上傳生成的頁面,我看着餅乾和發現的SessionID
ipdb> self.request.COOKIES
{'csrftoken': '43535f552b7c94563ada784f4d469acf', 'sessionid': 'rii380947wteuevuus0i5nbvpc6qq7i1'}
當我看到什麼被張貼在SWFUploadMiddleware(使用Firefox時)我發現sessionid沒有被設置。
在我生成一個包含上傳處理程序的頁面INTIAL看法,我加入了會話ID上下文。
context['sessionid'] = self.request.session.session_key
在我swfuploader設置,我添加的SessionID到PARAMS後的選項,如下所示:
post_params: {... "sessionid": "{{ sessionid }}" ...},
現在,當我在SWFUploadMiddleware望去,我能看到的SessionID被張貼,和我的上傳開始工作,如果Firefox。
ipdb> request.POST
<QueryDict: {... u'session_id': [u'rii380947wteuevuus0i5nbvpc6qq7i1'],...}>
爲了完整起見,我SWFUploadMiddleware看起來像這樣...
from django.conf import settings
from django.core.urlresolvers import reverse
class SWFUploadMiddleware(object):
def process_request(self, request):
if (request.method == 'POST') and (request.path == reverse('upload_handler')) and request.POST.has_key(settings.SESSION_COOKIE_NAME):
request.COOKIES[settings.SESSION_COOKIE_NAME] = request.POST[settings.SESSION_COOKIE_NAME]
# http://stackoverflow.com/questions/6634666/403-forbidden-error-on-swfupload-and-django
# Fix for problem uploading images (403 error) in Firefox 20 and others
if request.POST.has_key('csrftoken'):
request.COOKIES['csrftoken'] = request.POST['csrftoken']
- 1. 的Django揚鞭示例代碼
- 2. SWFUpload示例/信息和Java
- 3. 代碼示例
- 4. django:運行'django示例'時沒有ForeignKey'錯誤教程代碼
- 5. WebRTC代碼示例
- 6. onFocusChange代碼示例?
- 7. CATiledLayer:示例代碼
- 8. TTXMLParser示例代碼?
- 9. GtkImageView示例代碼
- 10. 的JMeter的示例代碼
- 11. iPhone的代碼示例UIGetScreenImage
- 12. POST + cookie的示例代碼?
- 13. PHP Webservice的示例代碼
- 14. imgscalr的示例代碼AsyncScalr
- 15. Doxygen中的代碼示例
- 16. Base64ToHex()的代碼示例
- 17. 好的Clojure代碼示例?
- 18. ABAddressBookCopyArrayOfAllPeopleInSourceWithSortOrdering的代碼示例?
- 19. Chainer的示例代碼
- 20. WebDAV的示例代碼PROPFIND
- 21. 的JavaScript代碼示例
- 22. 代碼示例的輸出
- 23. 的Android SSH示例代碼
- 24. Grails示例和示例代碼片段
- 25. 來自Django文檔的示例代碼的錯誤
- 26. 複雜django模型和視圖的代碼示例引用
- 27. SWFUpload與Django 1.2 csrf問題
- 28. 「Hasty Pudding」密碼的示例源代碼?
- 29. AngularJS示例代碼顯示的代碼不是數據
- 30. 描述Mockito示例代碼
-1:無碼。 -1:無錯誤追蹤或其他消息。 – 2009-03-05 00:30:52