tornado重定向的幾種方式


tornado第一種重定向方式,使用redirect方法

import  tornado.web
import tornado.ioloop

class RedirectHandlerTest(tornado.web.RequestHandler):
    def get(self,*args,**kwargs):
        #第一種直接使用重定向方法重定向
        self.redirect("https://music.migu.cn/")

app=tornado.web.Application([
    (r'^/$',RedirectHandlerTest),
])
app.listen(8888)
tornado.ioloop.IOLoop.instance().start()

  訪問http://127.0.0.1:8888/ 直接跳轉到了咪咕音樂

 

tornado第二種重定向方式,重寫調用方法

 

 

import  tornado.web
import tornado.ioloop

class RedirectHandlerTest(tornado.web.RequestHandler):
    def get(self,*args,**kwargs):
        #重寫下面此方法
        self.set_status(303)
        self.set_header("Location", ("https://music.migu.cn/"))

app=tornado.web.Application([
    (r'^/$',RedirectHandlerTest),
])
app.listen(8888)
tornado.ioloop.IOLoop.instance().start()

  

tornado第三種方式使用RedirectHandler類

import  tornado.web
import tornado.ioloop

class RedirectHandlerTest(tornado.web.RequestHandler):
    def get(self,*args,**kwargs):
        #重寫下面此方法
        self.set_status(303)
        self.set_header("Location", ("https://music.migu.cn/"))

app=tornado.web.Application([
    (r'^/red', RedirectHandler, {'url': 'https://music.migu.cn/'})
])
app.listen(8888)
tornado.ioloop.IOLoop.instance().start()

  tornado使用反向解析

import  tornado.web
import tornado.ioloop
from tornado.web import RedirectHandler
from tornado.routing import URLSpec

class ReversHandler(tornado.web.RequestHandler):
    def get(self,*args,**kwargs):
        self.redirect(self.reverse_url('index'))

class RedirectHandlerTest(tornado.web.RequestHandler):
    def get(self,*args,**kwargs):
        #第一種直接使用重定向方法重定向
        self.redirect("https://music.migu.cn/")
     

app=tornado.web.Application([
    # # 進行 反向解析
     URLSpec(r'^/test$',RedirectHandlerTest,name='index'),
     (r'^/reverse/$',ReversHandler)
])
app.listen(8888)
tornado.ioloop.IOLoop.instance().start()

  解說:使用瀏覽器訪問reversedi地址,調用ReversHandler,它有重定向到時要使用index,index有是使用的RedirectHandlerTest,而它重定向的就是https://music.migu.cn/v3,看重定向的頁面,是304

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM