Zope REQUEST 和 RESPONSE的常用方法
##REQUEST
- environ
CGI编程规范所要求的环境变量,包括用户请求头信息,
服务器信息和其它用户请求相关的信息 - form
从用户请求上提交的表单变量
- cookies
cookie数据
- other
其它可以设置的数据
- PARENTS
漫游访问对象时所经历的对象列表,
从PARENTS[0]开始是所访问对象的父对象 - RESPONSE
获取RESPONSE对象
- URL
用户所访问的URL,但不包含参数字符串
- URLn
其中的n分别是0, 1一直往上数。
URL0就是URL,URL1是URL0去掉最后一级路径,URL2是URL1再去掉一级路径,
直到网站根为止 - URLPATHn
URLPATHn分别对应着URLn的路径部分,如URLPATH0就是URL0的路径部分,依此类推
- BASEn
BASEn以一种与URLn相反的方式计数:
BASE0就是网站根,BASE1是所访问的URL的网站根加上一级路径,
BASE2就是加上二级路径,依此类推 - BASEPATHn
BASEPATHn就是BASEn的路径部分
- get_header(name, default=None)
返回命名的HTTP头,或者可选的default参数,如果没有这个HTTP头则返回空。
注意,有没有HTTP_
都可以识别,如 Content-Type,
CONTENT_TYPE, HTTP_CONTENT_TYPE 都会返回 Content-Type 头,如果有的话。 - getClientAddr()
以字符串形式返回客户端IP,不能找到时返回空字符串
- has_key(key)
如果REQUEST对象上有这个key则返回真,否则返回假
- items()
以(key, value)的形式返回对象的元组的一个序列
- keys()
返回REQUEST所保存的所有对象的key的已排序的序列
- set(name, value)
在REQUEST上设置属性,如在Plone模板开发中常用的设置无边框操作是
request.set('disable_border', 1)
- set_lazy(key, callable)
设置延迟计算的数据,callable是一个可调用的对象
当这个数据被访问时才调用callable计算出,计算后就保存在other数据中 - setServerURL(protocol=None, hostname=None, port=None)
设置服务器相关的URL,同时会影响到URL,URLn,BASEn,还有absolute_url的计算值
- values()
返回REQUEST中所保存的所有值的序列
##RESPONSE
- addHeader(name, value)
添加一项HTTP响应头
- expireCookie(name, **kw)
发送一个cookie过期的消息,通知浏览器删除这个cookie
- redirect(location, status=302, lock=0)
给浏览器回应重定向,如:
RESPONSE.redirect('http://czug.org')
- setBase(base)
设置响应的基准URL,如果base为None或这个输出已经有base,则没有效果
- setBody(body, title=””, is_error=0)
设置返回的响应体为body字符串的内容。并更新返回的Content-Length字段。
- setCookie(name, value, **kw)
设置cookie信息,如:
RESPONSE.setCookie('__cp', cp, path='%s' % cookie_path(REQUEST))
- setHeader(name, value, literal=0)
设置一个返回的HTTP头
- setStatus(status, reason=None)
设置返回状态,reason参数是用于描述这个状态的字符串。
Zope REQUEST 和 RESPONSE的常用方法