tornado请求与响应
tornado中处理请求与响应的类如下, 所有视图类必须继承该类:
tornado.web.RequestHandler
一. 响应之self.write()方法
1. 该方法可返回值的类型: 当返回字典时, 可以把字典json成字符串, 使用write返回, 其在response头
中呈现的是text类型.
write()方法执行不代表视图的终止,该方法把返回的内容会放入缓存区,
其下如还有代码会继续执行.
缓存区什么时候返回内容呢? 1.程序结束; 2.手动刷新; 3.缓存区满了; 4.遇到\n
2. 使用write方法直接返回字典, 也可. 其在response响应头中会自动呈现为json类型.
二. 响应之self.redirect( url )方法:
1. 重定向到url网址.
三. 响应之self.send_error( status_code, **kwargs) 和 write_error( status_code, **kwargs)
send_error用来抛出http错误状态码, 默认为500, 抛出后tornado会调用write_error方法处理.并返回
给浏览器事先定义的错误页面.
注意: self.send_error()只是个tornado提供的一个方法, 而write_error是类方法.
def write_erroe(self, status_code, **kwargs):
类中无论何处send_error方法抛出的, 都会在该方法中处理. status_code会接受错误码
可根据status_code来返回不同的自定义页面.
def get(self, *args, **kwargs):
self.send_error(500)
四. 响应之self.finish()方法
1. 作用同self.write()方法, 都可用于返回数据, 不同之处在于write方法是把数据放入缓存区, 而finish方法
在write基础上会自动刷新缓存区把内容返回, 且会关闭当此请求通道, 其下其余的返回内容无效.
五. 响应头设置
1. set_status( status_code, reason=None)方法的使用:
在tornado视图方法中直接使用:(注意reason为None时状态码必须为正常值
def get(self):
self.set_status(666, ‘状态码的描述’)
self.write(‘...........’)
2. tornado提供有全局设置响应头的方法, 方法名固定, 框架内置的:
在视图类中定义该方法, 其下配合set_header方法设置响应头, 即可让试图类中所有方法都带有响应头:
def set_default_headers():
self.set_header(key, value) # key和value自定义即可.
self.set_header(k1, v1) # 可罗列多个该方法, 一次设置多个响应头
tornado请求与响应的更多相关文章
- 2.tornado请求与响应
之前我们介绍了tornado的基础流程,但还遗留了一些问题.今天我们就来解决遗留问题并学习新的内容 settings,使用tornado.web.Application(handler, **sett ...
- tornado的请求与响应
tornado请求与响应相关 一.配置文件config.py 中的settings 有哪些配置: debug:设置tornado是否工作再调试模式下,默认为false 即工作再生产模式下 true的特 ...
- 2.(基础)tornado的请求与响应
之前我们介绍了tornado 的基础流程,但是还遗留了一些问题,今天我们就来解决这些遗留问题并学习新的内容 settings,使用tornado.web.Application(handler, ** ...
- tornado 03 请求与响应
tornado 03 请求与响应 一.请求与响应 浏览器与服务器之间沟通的到底是什么信息 #服务器在后台一直保持运行着 #浏览器通过URL(路由.地址)发送请求 #服务器接收请求了通过tornado处 ...
- Django底层剖析之一次请求到响应的整个流程
As we all know,所有的Web应用,其本质上其实就是一个socket服务端,而用户的浏览器就是一个socket客户端. #!/usr/bin/env python #coding:utf- ...
- 初入网络系列笔记(4)HTTP请求和响应
一.借鉴说明,本博文借鉴以下博文 1.starok,HTTP必知必会,http://www.cnblogs.com/starstone/p/4890409.html 2.CareySon,HTTP协议 ...
- http协议(二)请求和响应报文的构成
http协议用于客户端和服务器之间的通信,请求访问资源的一方称为客户端,而提供资源响应的一方称为服务器端. 下面就是客户端和服务端之间简单的通信过程 PS:请求必须从客户端建立通信,服务端没收到请求之 ...
- iOS开发——网络篇——HTTP/NSURLConnection(请求、响应)、http响应状态码大全
一.网络基础 1.基本概念> 为什么要学习网络编程在移动互联网时代,移动应用的特征有几乎所有应用都需要用到网络,比如QQ.微博.网易新闻.优酷.百度地图只有通过网络跟外界进行数据交互.数据更新, ...
- struts2基础——请求与响应、获取web资源
一.请求与响应 Action1.含义:(1) struts.xml 中的 action 元素,也指 from 表单的 action 属性,总之代表一个 struts2 请求.(2) 用于处理 Stru ...
随机推荐
- 在 React 组件中监听 android 手机物理返回/回退/back键事件
当前端页面嵌入到 webview 中运行时,有时会需要监听手机的物理返回按键事件来做一些自定义的操作. 比如我最近遇到的,在一个页面里面有批量选择的功能,当点击手机的返回键时,清除页面上的选中状态.我 ...
- PostgreSQL CentOS 7 安装配置
https://www.postgresql.org/download/ 选择相应的版本 安装完成后,稍微配置下,否则无法远程访问: cd /var/lib/pgsql/11/data vi post ...
- 如何配置jdk的本地环境
在计算机→属性→高级系统设置→高级→环境变量,如图: 第一步:系统变量→新建 JAVA_HOME 变量 . 变量值填写jdk的安装目录(本人是C:\Program Files\Java\jdk1.8. ...
- ubuntu16.04 下anaconda3安装教程
贴一个成功的连接: https://blog.csdn.net/u012243626/article/details/82469174
- 在IIS配置时没有启用目录浏览功能 :HTTP 错误 403.14
在IIS配置时没有启用目录浏览功能,浏览网站时,会出现“HTTP 错误 403.14–Forbidden,Web服务器被配置为不列出此目录内容”的提示,怎么解决这个问题呢? 01 02 03 04 0 ...
- C#使用FileSystemWatcher来监控指定文件夹,并使用TCP/IP协议通过Socket发送到另外指定文件夹
项目需求: 局域网内有两台电脑,电脑A(Windows系统)主要是负责接收一些文件(远程桌面粘贴.FTP上传.文件夹共享等方式),希望能在A接收文件后自动传输到电脑B(Windows系统)来做一个备份 ...
- ORACLE 求和(多列)
SELECT SUM(列名),SUM(列名),SUM(列名),SUM(列名) FROM 表名
- Python简单的get和post请求
1.json 模块提供了一种很简单的方式来编码和解码JSON数据. 其中两个主要的函数是 json.dumps() 和 json.loads() , 要比其他序列化函数库如pickle的接口少得多. ...
- AppScan基础使用 - 初学篇
最近找工作,阿里的面试官问过了安全,以前面试中也问到了安全,呆过的公司,朋友呆过的公司,发现安全测试很少 ,可能是应用的比较少. 当今社会安全还是比较重要的,学学有好处,大概了解下 .因为个人比较懒 ...
- c++语法大全笔记(一)
目录 一:初级知识 c++是一种中级语言,是c的扩充,是一种面向对象的程序设计语言,可以运行到多个平台.这里直接讲语法. 基础c++模板: #include <iostream> ...