`

WSGI Webob Routes 实例

阅读更多

1.下载库文件 

   webob库:http://download.csdn.net/detail/spch2008/5497755

   routes库:http://download.csdn.net/detail/spch2008/5497757

   repoze库:http://download.csdn.net/detail/spch2008/5499231

2. 组织代码

    

3. 代码

   

[python] view plaincopyprint?
 
  1. ''''' 
  2. Created on 2013-6-1 
  3.  
  4. @author: spch2008 
  5. '''  
  6.   
  7. from wsgiref.simple_server import make_server  
  8.   
  9. import routes.middleware  
  10. import webob.dec  
  11. import webob.exc  
  12.   
  13. class Controller:  
  14.     @webob.dec.wsgify  
  15.     def __call__(self, req):  
  16.         return webob.Response("Hello World!")  
  17.   
  18.   
  19.    
  20. class Router(object):  
  21.     def __init__(self):  
  22.         self._mapper = routes.Mapper()  
  23.         self._mapper.connect('/spch',    
  24.                         controller=Controller(),    
  25.                         action='index',    
  26.                         conditions={'method': ['GET']})    
  27.           
  28.         self._router = routes.middleware.RoutesMiddleware(self._dispatch, self._mapper)  
  29.  
  30.     @webob.dec.wsgify  
  31.     def __call__(self, req):  
  32.           
  33.         return self._router  
  34.  
  35.     @staticmethod  
  36.     @webob.dec.wsgify  
  37.     def _dispatch(req):  
  38.         match = req.environ['wsgiorg.routing_args'][1]  
  39.                   
  40.         if not match:  
  41.             return webob.exc.HTTPNotFound()  
  42.           
  43.         app = match['controller']    
  44.         return app  
  45.           
  46.         
  47.   
  48. app = Router()  
  49. httpd = make_server('localhost'8282, app)    
  50. httpd.serve_forever()   

 

  22行:创建一个mapper

  23行:#注册一个路由

  28行:创建一个RoutesMiddleware对象,匹配路由,修改环境变量后,调用self._dispatch

 

 

4. 运行结果

    

分享到:
评论

相关推荐

    python bottle 实例 wsgi

    使用python的bottle框架开发的一个留言本的实例,此实例在apache的wsgi模式下工作良好,第一次学习,有很多疏漏希望大家多多指教http://www.richdata.org/archives-209-richdata.html

    mod_wsgi.so全版本下载

    标题“mod_wsgi.so全版本下载”暗示了这是一个包含不同版本的`mod_wsgi`库,适应不同的Apache和Python版本,以及Windows的不同体系结构。 1. **mod_wsgi介绍** `mod_wsgi`是Apache HTTP服务器的模块,允许Python...

    mod_wsgi-windows

    "mod_wsgi-windows" 指的是 mod_wsgi 的 Windows 版本。mod_wsgi 是一个用于Apache HTTP服务器的模块,它允许Python应用程序被集成到Web服务器中,实现用Python编写Web应用。 **描述解析:** 描述中的 "ap 22-24 ...

    mod wsgi so

    mod_wsgi 实现了 WSGI 服务器端,允许 Python 应用通过 WSGI 协议与 Apache 通信。 9. **性能优化**:使用 daemon 模式可以提高 mod_wsgi 的性能,因为它可以管理多个独立的 Python 进程,并且可以在不影响其他应用...

    webob源代码

    WebOb provides wrappers around the WSGI request environment, and an object to help create WSGI responses. The objects map much of the specified behavior of HTTP, including header parsing and ...

    PyPI 官网下载 | WebOb-0.9.6.tar.gz

    在分布式系统和云原生环境中的应用,WebOb作为一个基础组件,可以被集成到各种Web框架和服务器中,比如使用WSGI(Web Server Gateway Interface)的Flask或Django等。Zookeeper,虽然在标签中提及,但与WebOb直接...

    mod_wsgi-3.5

    **标题:“mod_wsgi-3.5”** **描述**:`mod_wsgi`是Apache服务器的一个模块,它使得Python应用程序能够与Web服务器无缝集成。这个版本“mod_wsgi-3.5”可能指的是该模块的3.5版本,可能支持不同的CPU架构和特定的...

    mod_wsgi python开发

    `mod_wsgi` 是一款用于在Apache Web服务器上部署和运行Python Web应用程序的模块,它实现了WSGI(Web Server Gateway Interface)标准。WSGI是Python Web应用的通用接口,让Web服务器与Web应用之间能进行通信。通过`...

    mod_wsgi3.5版全集

    **标题:“mod_wsgi3.5版全集”** **正文:** `mod_wsgi`是Apache服务器的一个模块,主要用于部署Python Web应用程序。这个“mod_wsgi3.5版全集”很可能包含了针对Python 3.5版本优化的mod_wsgi模块,确保与该版本...

    mod_wsgi4.2.7

    **Mod_wsgi 深入理解与应用** `mod_wsgi` 是一个广泛使用的Apache服务器模块,用于在Apache HTTP Server上高效地运行Python Web应用程序。它提供了与WSGI(Web Server Gateway Interface)协议的接口,使得Python...

    mod_wsgi源码/so文件

    标题中的"mod_wsgi源码/so文件"表明这是一个与Web服务器Apache相关的模块,mod_wsgi是Python应用在Apache上的一个接口,用于将Python应用程序集成到Apache服务器中。"so文件"是指Linux系统下的动态链接库文件,相当...

    mod_wsgi 编译后的文件

    标题提及的是“mod_wsgi 编译后的文件”,这指的是Apache服务器的一个模块,用于在Python环境中运行Web应用。mod_wsgi是Apache HTTP服务器的一个接口,允许Python Web应用程序(如Django、Flask等)与Apache进行交互...

    Apache2.5+wsgi.os

    5. 创建WSGI应用:创建一个名为 application.wsgi 的文件,里面包含Python代码,用于初始化和运行WSGI应用。例如: ```Python import os, sys sys.path.append('/path/to/your/python/app') from yourapp import...

    mod_wsgi-3.5-for-win32各个版本.zip

    mod_wsgi-3.5.ap22.win32-py2.6.zip mod_wsgi-3.5.ap22.win32-py2.7.zip mod_wsgi-3.5.ap22.win32-py3.2.zip mod_wsgi-3.5.ap22.win32-py3.3.zip mod_wsgi-3.5.ap22.win32-py3.4.zip mod_wsgi-3.5.ap22.win-amd64-py...

    Apache安装包与mod_wsgi库

    Apache是世界上最流行的Web服务器软件,而mod_wsgi是Apache的一个模块,用于托管Python Web应用程序,如Django。在Windows环境下,使用Apache和mod_wsgi来部署Django项目是一种常见的实践,因为它们提供了稳定性和...

    django+apache+mod_wsgi完美匹配包

    **Django + Apache + mod_wsgi 完美匹配包** 在Web开发中,Django是一个强大的Python框架,它提供了一整套解决方案,包括数据库管理、模板引擎、表单处理等。Apache是世界上最流行的HTTP服务器软件,它具有高度的可...

    mod_wsgi-windows-4.4.12

    标题"mod_wsgi-windows-4.4.12"指的是一个特定版本的mod_wsgi模块,该版本为4.4.12,专为Windows操作系统设计。"windows"标签进一步确认了这是针对Windows平台的软件。"x32/x64"表明这个版本兼容32位和64位的系统。...

    Linux+Django+Python+Wsgi配置过程

    ### Linux+Django+Python+Wsgi配置过程 #### 一、环境准备与系统基本信息 根据提供的文件信息,本文档将详细介绍如何在Linux环境下配置Apache+Mod_Wsgi+Django环境的过程。具体步骤包括软件安装、项目部署等环节。...

Global site tag (gtag.js) - Google Analytics