上一篇:Django返回json数据
前端页面上传文件,后台接收并保存,然后返回到前端页面。
前端代码
<body>
<form method="post" action="/user/imghandler" enctype="multipart/form-data">
{% csrf_token %}
<input type="file" name="file">
<br>
<input type="submit">
</form>
</body>
后台代码
def imguploadform(request):
# GET请求返回表单页面
if request.method == 'GET':
return render(request=request, template_name='img.html')
# POST请求上传图片
elif request.method == 'POST':
# 获取图片文件
img_data = request.FILES['file']
# 将图片文件写入本地
with open('upload.jpg', 'wb+') as f:
for i in img_data.chunks():
f.write(i)
# 返回另一个页面展示图片
return render(request=request, template_name='showimg.html')
返回图片文件
def retimg(request):
with open('upload.jpg', 'rb') as f:
ret_img_data = f.read()
# content_type为img图片类型
return HttpResponse(ret_img_data, content_type='image/jpg')
前端显示图片页面
<body>
<h1>图片展示</h1>
<img style="display: inline-block" src="/user/img" width="40%" height="40%" alt="">
</body>
保存到后台