Python开发Tornado网站之RequestHandler:输入捕捉

不言
发布: 2018-10-19 17:16:05
转载
2748人浏览过
本篇文章给大家带来的内容是关于Python开发Tornado网站之RequestHandler:输入捕捉 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

输入捕捉是指在requesthandler中用于获取客户端输入的工具函数和属性。比如获取url参数、post提交参数等。

1、get_argument(name)、get_arguments(name)

RequestHandler.get_argument(name)与RequestHandler.get_arguments(name)都是返回给定参数的值。get_argument是获取单个值,而get_arguments在参数存在多个值得情况下使用,返回多个值的列表。  
注意:使用这两个方法获取的事URL中查询的参数与POST提交的参数的参数合集。

2、get_query_argument(name)、get_query_arguments(name)

功能与上面两个方法类似,唯一区别是这两个方法仅仅从URL中查询参数。

3、get_body_argument(name)、get_body_arguments(name)

立即学习Python免费学习笔记(深入)”;

功能尚与上面四个方法类似,唯一区别是这两个方法仅仅从POST提交的参数中查询。

提示:实际开发中一般会使用get_argument、get_arguments这两个方法,因为他们会包含其他方法的查询结果。

4、get_cookie(name,default=None)

根据Cookie名称获取Cookie的值

5、 RequestHandler.request

返回tornado.httputil.HTTPServerRequest对象实例的属性,通过该对象可以获取关于HTTP请求的一切信息,比如:

from tornado.web import Application, RequestHandler
import tornado.ioloop


class DetailHandler(RequestHandler):
    def get(self):
        ip = self.request.remote_ip  # 获取客户端的IP地址
        host = self.request.host  # 获取请求的主机地址
        result="ip地址为%s,host为%s"%(ip,host)
        return self.write(result)


if __name__ == '__main__':
    app = Application([
        ("/request", DetailHandler)
    ])
    app.listen(8888)
    tornado.ioloop.IOLoop.current().start()
登录后复制

浏览器输入:http://localhost:8888/request

页面显示:

ip地址为::1,host为localhost:8888
登录后复制

常用的httputil.HTTPServerRequest对象属性如下表:

属性名 说明
method HTTP请求方法,例如:GET、POST
uri 客户端请求的uri的完整内容。
path uri路径名,即不包含查询字符串
query uri中的查询字符串
version 客户端发送请求时使用的HTTP版本,例如:HTTP/1.1
headers 以字典方式的形式返回HTTP Headers
body 以字符串的形式返回HTTP消息体
remote_ip 客户端的IP地址
protocol 请求协议,例如:HTTP、HTTPS
host 请求消息的主机名
arguments 客户端提交的所有参数。
files 以字典形式返回客户端上传的文件,每个文件名对应一个HTTPFile
cookies 客户端提交的Cookies字典

以上就是Python开发Tornado网站之RequestHandler:输入捕捉的详细内容,更多请关注php中文网其它相关文章!

python速学教程(入门到精通)
python速学教程(入门到精通)

python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:segmentfault思否网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号