与龙卷风,我希望能够充分分析网络请求。
这是请求
curl -vk _POST http://127.0.0.1:3000 -H "Content-Type: application/x-www-form-urlencoded" --data "testObject=20"使用该代码
import time, threading
import tornado.ioloop
import tornado.web
import sys
class MainHandler(tornado.web.RequestHandler):
def get(self):
print('get message:')
print(str(self.request.body))
self.write(self.request.body)
def post(self):
print('post message')
print(str(self.request.body))
self.write(self.request.body)
def make_app():
return tornado.web.Application([
(r"/", MainHandler),
])
def startTornado():
app = make_app()
app.listen(my_port)
tornado.ioloop.IOLoop.instance().start()
def stopTornado():
tornado.ioloop.IOLoop.instance().stop()
if __name__ == "__main__":
my_port = 3000
print('app is listening on port',str(my_port))
t = threading.Thread(target=startTornado)
t.start()
while True:
try:
time.sleep(0.01)
# signal : CTRL + BREAK on windows or CTRL + C on linux
except KeyboardInterrupt:
stopTornado()
t.join()
sys.exit()我得到的只是
b'testObject=20'为了能够正确地对编码、内容类型、数据等做出反应,我该如何使用tornado呢?在python中还有什么我可以使用的吗?
发布于 2018-12-19 22:13:04
在tornado中,request.body总是原始的主体数据。表单编码的数据被解析成arguments结构,通常使用self.get_argument('testObject')等方法进行访问。
https://stackoverflow.com/questions/53852959
复制相似问题