وحدة طلبات Python غير قادرة على تحميل الملف على خادم Django

StackOverflow https://stackoverflow.com/questions/19853503

سؤال

أحاول تحميل ملف إلى خادم Django Python من خلال عميل Python.

حاولت هذا -

import requests

url = 'http://wings.spectrumserver/sdm/lists'
files = {'file': open('file.ext', 'rb')}
r = requests.post(url, files=files)

لكن بطريقة ما لا يعمل. No error but no output/upload as well

أقوم بتحميل الملفات بنجاح بواسطة Browser وخط الأوامر.

curl -i --form docfile=@localfilename http://wings.spectrumserver/sdm/lists

يرجى اقتراح ما يجب القيام به ؟؟

لا أعرف الكثير عن الضفيرة والبيثون ، لكن ربما يمكن لشخص ما أن يقترح شيئًا نسخة طبق الأصل من هذا الأمر pycurl لأنه يعمل بالفعل مع حليقة.

يرجى الرجوع هنا لمزيد من التفاصيل حول السؤال -

تحميل ملف إلى خادم Django باستخدام Curl

هل كانت مفيدة؟

المحلول

أعتقد أن المشكلة هنا هي اسم عنصر الملف. يجب أن يكون docfile. في مثال على حليقة ، لقد مررت بذلك docfile ولكن في السيناريو بيثون تركته كـ file.

تغيير هذا الخط:

files = {'file': open('file.ext', 'rb')}

الى هذا:

files = {'docfile': open('file.ext', 'rb')}

نصائح أخرى

عندما تنظر إلى الطلب في عرضك ، قد تراه في طلب.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top