Python全系列 教程
3567个小节阅读:5931.5k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
Tornado在元组中可以传递指定的规则,并会根据规则来匹配HTTP请求的路径(这个路径是URL中主机名后面的部分)。匹配完成后,会实例化相应的类。
url地址可以如下操作:
name
属性,在处理函数中使用reverse_url
xxxxxxxxxx
from tornado.web import RequestHandler,Application,URLSpec
from tornado.ioloop import IOLoop
# 用来处理请求,并响应结果
class IndexHandler(RequestHandler):
def get(self):
self.write('Hello Tornado!!')
class Index2Handler(RequestHandler):
def get(self):
self.write('Hello Tornado!!22')
class Index3Handler(RequestHandler):
def get(self):
self.write('Hello Tornado!!33')
class UserHandler(RequestHandler):
def get(self,id):
self.write(f'您好,您的用户ID是:{id}')
class UserNameHandler(RequestHandler):
def get(self,name):
self.write(f'您好,您的用户名是:{name}')
class BookNameHandler(RequestHandler):
def get(self,book_type,book_name):
self.write(f'您好,您获取的资源类型是:{book_type} 分类是:{book_name}')
class Rediect1Handler(RequestHandler):
def get(self):
# self.redirect('/') # 跳转到另一个URL地址
# self.reverse_url('index') 通过控制器的名字进行反向查找URL的地址
self.redirect(self.reverse_url('index'))
class Rediect2Handler(RequestHandler):
def initialize(self,name,pwd):
self.name = name
self.pwd = pwd
print(f'{self.name}======={self.pwd}')
def get(self):
self.redirect(self.reverse_url('index'))
if __name__ =='__main__':
# 定义要传递的参数
args ={'name':'sxt','pwd':123}
# 创建一个tornado应用
app = Application([
# ('/',IndexHandler), # 精准匹配
URLSpec('/',IndexHandler,name='index'),
('/index2/',Index2Handler),
('/index3/?',Index3Handler), # 控制模糊匹配
('/user/(\d+)/',UserHandler), # 使用re匹配
('/user/(\w+)/',UserNameHandler), # URL匹配是根据从上到下依次匹配的,匹配到后会直接处理并响应
# ('/book/(\w+)/(\w+)/',BookNameHandler), # 传递多个数据
('/book/(?P<book_type>\w+)/(?P<book_name>\w+)/',BookNameHandler), # 传递多个数据,通过 “(?<var_name正则的规则>)”
('/test/?',Rediect1Handler), # 跳转
URLSpec('/test2/?',Rediect2Handler,args) # 方式时,可以传递参数
],debug = True)
# 设置监听端口
app.listen(8000)
# 通过事件循环来监听访问的端口
IOLoop.current().start()
实时学习反馈
1. 关于Tornado的设置URL参数说法错误的是?
A 不可以在设置URL时传递参数
B 可以设置URL反转的名称
C URL可以使用正则匹配
D URL可以使用精准匹配
答案
1=>A