官方示例
>>> from django.core.files.base import ContentFile >>> from django.core.files.storage import default_storage >>> path = default_storage.save('path/to/file', ContentFile(b'new content')) >>> path 'path/to/file' >>> default_storage.size(path) 11 >>> default_storage.open(path).read() b'new content' >>> default_storage.delete(path) >>> default_storage.exists(path) False
单文件上传
发送文件到django服务上
import requests basic_file="" files = { "file": ("basic.sqlite3", open(basic_file, "rb"), "") } response=requests.post(url,files=files) print(response)
django服务器接受文件并保存文件
from django.views import View class Test1View(View): def post(self, request): from django.core.files.storage import default_storage file=request.FILES['file'] default_storage.save(file.name, file) return render(request, 'test1.html', )
多文件上传和接受
发送文件到django服务上
import requests base_dir ='' files = [] for name in file_li: file_name= f'{name }.sqlite3' basic_file = os.path.join(base_dir, file_name) files.append(("files", (file_name, open(basic_file, "rb"), ""))) response = requests.post(url, files=files) content = response.json()
django服务器接受文件并保存文件
from django.views import View class Test1View(View): def post(self, request): from django.core.files.storage import default_storage for file in request.FILES.getlist('files'): path=os.path.join(settings.BASE_DIR,file.name) if os.path.exists(path): os.remove(path) default_storage.save(file.name, file)
官方文档:
https://docs.djangoproject.com/en/3.2/topics/files/
还没有留言,还不快点抢沙发?