1. 程式人生 > 實用技巧 ><Tornado>Tornado原始碼學習

<Tornado>Tornado原始碼學習

  1. 原始碼分析流程
    • python app.py  
      • 載入路由關係 
      • 載入配置檔案
      • 啟動socket
    • 使用者發請求
      • 匹配路由
      • 執行指定類的 指定方法    
    •    

    • import tornado.ioloop
      import tornado.web
      
      
      # view
      class MainHandler(tornado.web.RequestHandler):
      	def get(self):
      		self.write("Hello, world")
      
      
      class LoginHandler(tornado.web.RequestHandler):
      	def get(self):
      		# self.write("請登入")
      		self.render("login.html")
      	def post(self, *args, **kwargs):
      		username = self.get_argument('username')
      		self.redirect('/index.html')
      
      settings = {
      	'template_path': 'templetes',
      	'static_path': 'static',
      	'static_url+prefix': '/ppp/',
      }
      
      
      # 路由
      def make_app():
      	return tornado.web.Application([
      		(r"/login.html", LoginHandler),
      		(r"/index", MainHandler),
      	], **settings)
      
      
      
      if __name__ == "__main__":
      
      	app = make_app()
      	# 建立socket物件
      	# sock = socket.socket()
      	app.listen(8888)
      	# 開啟 r,w,e = select.select([socket,],)
      	tornado.ioloop.IOLoop.current().start()