转载的
简介
finish和write都可以将后端的数据传输到前端。他们有啥差别嘞。

该项目的github地址: tornado_learning.git

例子
代码apps/hello/write_finish_handler.py

from tornado_learning.handler import BaseHandler
import time

class Write_Finish_Handler(BaseHandler):

    def get(self):
        self.write("hello")
        time.sleep(4)
        self.finish("world")

在等待4秒后,同时输出: hello world

class Finish_Write_Handler(BaseHandler):

    def get(self):
        self.finish("hello")
        self.write("world")

输出: hello
并且报错: Cannot write() after finish()

总结
self.finish()代表回应到前端的终结。并且可以在finsh后做一些与回应给前端无关的操作,缩短响应时间。
self.write()并不会马上将数据返回前端,必须在self.finsh()或者return后才会响应,类似以缓存吧。
————————————————
版权声明:本文为CSDN博主「Crazy灬峰少」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_22918243/article/details/99860522

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐