У меня проблемы с доступом к телам http-запросов с помощью CherryPy.
Я использую CherryPy 3.2.0 на компьютере x86_64 Arch Linux с Python3 и IDE Aptana Web Studio.
Когда я пытаюсь получить доступ к телу запроса через обычный cherrypy.request.body.read (), я получаю сообщение об ошибке
File "/usr/lib/python3.2/site-packages/cherrypy/_cpreqbody.py", line 450, in read
return self.fp.read(size, fp_out)
TypeError: read() takes at most 2 positional arguments (3 given)
Код, вызывающий ошибку:
import cherrypy
class Test:
def index(self):
print(cherrypy.request.body.read())
#print(cherrypy.request.body.readline()) <- this works!
return 'HelloWorld'
index.exposed = True
if __name__ == '__main__':
cherrypy.quickstart(Test())
Однако, используя
cherrypy.request.body.readline() or cherrypy.request.body.readlines(n)
вместо
cherrypy.request.body.read()
Я могу просто просмотреть тело запроса. Я попробовал поискать в Google решение, но не нашел ничего. Учитывая, что я новичок в Python, должно быть, я что-то не так делаю, но что?
Заранее благодарим за вашу драгоценную помощь.