分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

Web.py 框架学习笔记 - ctx

发布时间:2023-09-06 01:09责任编辑:彭小芳关键词:Web

摘要:

ctx用于存取web请求的环境变量,基于ThreadedDict类进行实例化。ThreadedDict类可实例化字典类型的对象,该对象某些属性可用于存取处理线程的id。 这样字典化实例的线程池使得web访问的并发控制很好地解决,而且线程之间非常独立。

范例:

1 class example:2 ????def GET(self):3 ????????referer = web.ctx.env.get(‘HTTP_REFERER‘, ‘http://google.com‘)4 ????????raise web.seeother(referer)

上述代码使用web.ctx.env来获取HTTP_REFERER这一环境变量。如果没有值,则默认会返回‘http://google.com‘,然后重定向到该网站。

web.ctx可以通过loadhook(挂载)的方式来进行设置。例如,每当service收到一个web请求,Session数据都会存放在web.ctx中。因为web.ctx是线程安全的,这时候就可以使用该Session数据(该数据必须是python中可识别的数据类型)。

ctx中包含的数据:

environ 即 env一个包含标准WSGI 环境变量格式的字典
homeweb应用的根目录,同时包含任何外部应用引用时的显示名,例如,http://example.org/admin
homedomain? (显示为协议+主机) http://example.org
homepath用户请求的path,即homepath + path = 用户完整的请求地址,处理时会与urls进行交互
host主机名,包含端口(默认8080)
ip发起web请求的用户ip
method发起的web请求方法
path用户请求部分的path,例如,/logon/authenticated,但是对于挂载的子应用,则不会显示子应用的名称。例如,主应用myapp.py,子应用subapp.py。子应用中有页面/read/blogs,则ctx中只会返回example.org/read/blogs而不是example.org/subapp/read/blogs
protocol请求遵循的协议http/https/ftp...
queryurl中请求的条件
fullpath 即 path+query完整的请求地址,包含请求的页面及请求的条件

响应状态:

  • status - http状态码,(默认200,ok )异常响应码:401 未授权
  • headers - 包含请求头(http header)信息的两个元组
  • output - 包含响应实体的字符串

Web.py 框架学习笔记 - ctx

原文地址:http://www.cnblogs.com/jl-cnblogs-163/p/7494967.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved