Mik*_*den 10 python django post file-upload
我有一个围绕用户上传文件的Django应用程序,我正在尝试创建一个API.基本上,这个想法是POST请求可以发送(例如使用curl)文件到我的应用程序,它将接受数据并处理它.
我如何告诉Django以这种方式收听和接受文件?所有Django的文件上传文档都围绕处理从Django中的表单上传的文件,所以我不确定如何以其他方式发布文件.
如果我能提供更多信息,我会很高兴.任何让我入门的事情都会非常感激.
Udi*_*Udi 11
创建一个小视图,忽略除POST后的每个方法,并确保它没有CSRF保护:
from django import forms
class UploadFileForm(forms.Form):
title = forms.CharField(max_length=50)
file = forms.FileField()
from django.views.decorators.csrf import csrf_exempt
from django.http import HttpResponse, HttpResponseNotAllowed, HttpResponseServerError
# Imaginary function to handle an uploaded file.
from somewhere import handle_uploaded_file
@csrf_exempt
def upload_file(request):
if request.method != 'POST':
return HttpResponseNotAllowed('Only POST here')
form = UploadFileForm(request.POST, request.FILES)
if not form.is_valid():
return HttpResponseServerError("Invalid call")
handle_uploaded_file(request.FILES['file'])
return HttpResponse('OK')
Run Code Online (Sandbox Code Playgroud)
另请参阅:向Django添加REST
| 归档时间: |
|
| 查看次数: |
4172 次 |
| 最近记录: |