资讯专栏INFORMATION COLUMN

Python:Tornado 第二章:实战演练:开发Tornado网站:第四节:RequestHan

blankyao / 3273人阅读

摘要:上一篇文章第二章实战演练开发网站第三节接入点函数下一篇文章第二章实战演练开发网站第五节输出相应函数输入捕捉是指在中用于获取客户端输入的工具函数和属性。是获取单个值而在参数存在多个值得情况下使用,返回多个值的列表。

上一篇文章:Python:Tornado 第二章:实战演练:开发Tornado网站:第三节:RequestHandler:接入点函数
下一篇文章:Python:Tornado 第二章:实战演练:开发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)

功能尚与上面四个方法类似,唯一区别是这两个方法仅仅从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字典

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/42592.html

相关文章

  • PythonTornado 二章实战演练开发Tornado网站:第三节:RequestHan

    摘要:上一篇文章第二章实战演练开发网站第二节路由解析下一篇文章第二章实战演练开发网站第四节输入捕捉需要子类继承并定义具体行为的函数在中被称为接入点函数上面的实例中的函数就是典型的接入点函数。 上一篇文章:Python:Tornado 第二章:实战演练:开发Tornado网站:第二节:路由解析下一篇文章:Python:Tornado 第二章:实战演练:开发Tornado网站:第四节:Reque...

    Fourierr 评论0 收藏0
  • PythonTornado 二章实战演练开发Tornado网站:第五节:RequestHan

    摘要:上一篇文章第二章实战演练开发网站第四节输入捕捉下一篇文章第二章实战演练开发网站第六节异步与协程化输出响应函数是指一组为客户端生成处理结果的工具函数,开发者调用它们以控制的处理结果。清空所有在本次请求中之前写入的和内容。 上一篇文章:Python:Tornado 第二章:实战演练:开发Tornado网站:第四节:RequestHandler:输入捕捉下一篇文章:Python:Tornad...

    nanfeiyan 评论0 收藏0
  • PythonTornado 二章实战演练开发Tornado网站:第六节:异步与协程化

    摘要:上一篇文章第二章实战演练开发网站第五节输出相应函数下一篇文章第二章实战演练开发网站第七节安全机制有两种方式可改变同步的处理流程异步化针对的处理函数使用修饰器,将默认的同步机制改为异步机制。使用异步对象处理耗时操作,比如本例的。 上一篇文章:Python:Tornado 第二章:实战演练:开发Tornado网站:第五节:RequestHandler:输出相应函数下一篇文章:Python:...

    cod7ce 评论0 收藏0
  • PythonTornado 二章实战演练开发Tornado网站第二节:路由解析

    摘要:上一篇文章第二章实战演练开发网站第一节网站结构下一篇文章第二章实战演练开发网站第三节接入点函数向对象传递的第个参数路由映射列表的配置方式与类型,用正则字符串进行路由匹配。实例参数路径在浏览器输入页面输出其中的是正在表达式。 上一篇文章:Python:Tornado 第二章:实战演练:开发Tornado网站:第一节:网站结构:HelloWorld下一篇文章:Python:Tornado ...

    cppprimer 评论0 收藏0
  • PythonTornado 二章实战演练开发Tornado网站:第八节:用户身份认证

    摘要:上一篇文章第二章实战演练开发网站第七节安全机制下一篇文章第二章实战演练开发网站第九节防止跨站攻击在的类中有一个属性用于保存当前请求的用户名。实例使用属性及方法来实现用户身份控制。该地址被用于装饰器在发现用户尚未验证时重定向到一个。 上一篇文章:Python:Tornado 第二章:实战演练:开发Tornado网站:第七节:安全Cookie机制下一篇文章:Python:Tornado 第...

    Kahn 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<