我目前正在尝试将文件发布到用 django 编写的服务端点。
我可以找到一堆这样的例子(从这里发挥):
def upload_file(request):
if request.method == 'POST':
form = UploadFileForm(request.POST, request.FILES)
if form.is_valid():
handle_uploaded_file(request.FILES['file'])
return HttpResponseRedirect('/success/url/')
........
但是我如何使用测试客户端或urllib发出请求,当它不是来自 HTML 表单时,它可以将文件传递给服务器? 我目前正在尝试将文件内容urlencode为json字符串,然后将其传递;但事实证明这很麻烦。
除了下面的答案:
- 不要忘记让您的服务 csrf 豁免
- 不要设置内容类型或将其显式设置为多部分。
- 有关如何在您的视图中处理传入文件的信息,请参阅此内容。