وجود طلب pycurl في وظيفة رأس؟
سؤال
وفي C لا إرجاع -1 عندما تريد إلغاء التحميل في الرأس أو وظيفة الكتابة. في pycurl أحصل على هذا الخطأ
pycurl.error: invalid return value for write callback -1 17
وأنا لا أعرف ماذا تعني 17 ولكن ما أنا لا تفعل بشكل صحيح؟
المحلول
ومن pycurl.c:
else if (PyInt_Check(result)) {
long obj_size = PyInt_AsLong(result);
if (obj_size < 0 || obj_size > total_size) {
PyErr_Format(ErrorObject, "invalid return value for write callback %ld %ld", (long)obj_size, (long)total_size);
goto verbose_error;
}
وهذا يعني 17 هو TOTAL_SIZE - هل هذا ممكن؟ و-1 (نتيجة) هو ما رد الاتصال تعود.
نصائح أخرى
import pycurl
import StringIO
c = pycurl.Curl()
s = StringIO.StringIO()
c.setopt(pycurl.URL, url)
c.setopt(pycurl.HEADER, True)
c.setopt(pycurl.NOBODY, True)
c.setopt(pycurl.WRITEFUNCTION, s.write)
c.perform()
print(s.getvalue())
لا تنتمي إلى StackOverflow