使用jQuery和Python进行异步文件上传
我想用JavaScript和Python一次上传多个文件。但是每次我发起ajax请求时,都会出现一个错误(403或者禁止访问)。我不知道到底出了什么问题????请帮帮我...
这是我的index.html文件...
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>jQuery File Upload Example</title>
</head>
<body>
<input id="fileupload" type="file" name="files[]" data-url="/media/" multiple>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="/static/js/jquery.ui.widget.js"></script>
<script src="/static/js/jquery.iframe-transport.js"></script>
<script src="/static/js/jquery.fileupload.js"></script>
<script>
$(function () {
$('#fileupload').fileupload({
dataType: 'json',
done: function (e, data) {
$.each(data.result.files, function (index, file) {
$('<p/>').text(file.name).appendTo(document.body);
});
}
});
});
</script>
<script>
$('#fileupload').fileupload({
/* ... */
progressall: function (e, data) {
var progress = parseInt(data.loaded / data.total * 100, 10);
$('#progress .bar').css(
'width',
progress + '%'
);
}
});
</script>
</body>
</html>
这是我的视图代码...
def update_file(request):
print "view is called"
context = RequestContext(request)
context_dict = {}
if request.method== "POST":
image = request.POST.get('image')
request.user.userprofile.resume.delete()
request.user.userprofile.resume = image
request.user.userprofile.save()
return render_to_response('index.html', context_dict, context)
1 个回答
0
我觉得这是因为你漏掉了CSRF令牌。你可以在这个链接里了解更多信息:https://docs.djangoproject.com/en/dev/ref/contrib/csrf/