Я использую свой flask сервер для публикации на django сервере, все, что я вижу, это пустой загруженный файл в django. я не хочу сохранять файл на сервере flask, все, что я хочу, - это непосредственно прочитать файл и отправить в django через библиотеку запросов.
flask код: ----
def upload():
if request.method == 'POST':
data = {}
count = 1
for i in request.files.getlist('files'):
data[count] = (i.stream.read())
count += 1
r = requests.post("http://127.0.0.1:9000/upload/files/",files=data) #it will post to upload_json function in djnago
мой django код: -
@csrf_exempt
def upload_json(request):
if request.method == 'POST':
print(request.FILES)
print(request.headers)
print(request.POST)
моя django консольная печать: -----
[[03/Mar/2020 14:53:03] "POST /upload/files/ HTTP/1.1" 500 58063
<MultiValueDict: {'1': [<InMemoryUploadedFile: 1 ()>], '2': [<InMemoryUploadedFile: 2 ()>]}>
{'Content-Length': '367434', 'Content-Type': 'multipart/form-data; boundary=9c79604fbd576719cfa0fd53ef6b5ad6', 'Host': '127.0.0.1:9000', 'User-Agen
t': 'python-requests/2.23.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'}
<QueryDict: {}>
, если я использую почтальон для публикации того же файлы, которые я получаю, это правильно
<MultiValueDict: {'file': [<InMemoryUploadedFile: Devil.jpg (image/jpeg)>, <InMemoryUploadedFile: wp2.jpg (image/jpeg)>]}>
{'Content-Length': '367612', 'Content-Type': 'multipart/form-data; boundary=-----------------262290824726058', 'Secretkey': '123q
weasd', 'User-Agent': 'PostmanRuntime/7.22.0', 'Accept': '*/*', 'Cache- Control': 'no-cache', 'Postman-Token': '585ddd1b-42b0-4cae-9648-7e2488da516f
', 'Host': '127.0.0.1:9000', 'Accept-Encoding': 'gzip, deflate, br', 'Cookie': 'sessionid=zg34jha0glqv96nfkpovth', 'Connection': 'keep-alive'}
<QueryDict: {}>