tornado学习笔记总结

网络层级

应用层,决定传输什么数据
传输层,(TCP,IP确认与重传机制)
网络层,
数据链路层,

从输入网址开始,做了什么
1、浏览器和服务器建立了一个tcp传输层通道
2、把url地址封装成http报文传输过去(http报文格式)
3、服务器返回页面数据或者其他数据
浏览器做了http的协议层


一、json数据传输

1、获取前端传输过来的数据

json数据被存放在request中,可以通过self.request.body获得,但是需要进行解码处理,self.request.body.decode(),就可以获得json数据进行后续处理了

2、给前端传输json数据

    给前端传输json类型的数据,需要设定传输数据的类型,可以用self.set_header(key, value)设置请求头的相关信息,在此设置Content-Type,
`self.set_header("Content-Type", 'application/Json; charset="utf-8"')`
然后把要传输的数据写成字典的形式,用json包转化成json格式的数据,直接用json.write(data)写入前端即可

二、tornado异步相关

1、服务器端

1.1:listen方式
server = HTTPServer(app)
server.listen(8000)
IOLoop.current().start()
这种方式将创建一个简单的单进程服务器,且这种方式用来避免明确创建一个HTTPServer

1.2:bind/start方式
server = HTTPServer(8000)
server.bind(8000)
server.start(0)
IOLoop.current().start()
这种方式将创建一个简单的多进程服务器

1.3:add_sockets方式
sockets = tornado.netutil.bind_sockets(8000)
tornado.process.fork_processes(0)
server = HTTPServer(app)
server.add_sockets(sockets)
IOLoop.current().start()
这种方式将产生一个高级的多进程服务器

2、客户端

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值