fbpx
维基百科

CherryPy

CherryPy是一个面向对象web应用框架,使用了Python编程语言。它设计用于web应用快速开发,通过包裹HTTP协议,但停留在低层而不提供超出RFC 7231所定义的东西。

CherryPy
開發者CherryPy team
初始版本2002年6月,​20年前​(2002-06[1]
目前版本
  • 18.8.0 (2022年7月18日;穩定版本)[2]
源代码库CherryPy Repository
编程语言Python
操作系统跨平台
许可协议BSD许可证[3]
网站cherrypy.org
Web应用框架

CherryPy自身可以是个web服务器,也可以通过任何WSGI兼容环境来启动它。它不处置用于输出呈现的模板或后端访问的任务。这个框架可以采用过滤器来扩展,它被调用于请求/响应处理的确定点上。

Python化接口

这个项目创立者Remi Delon英语Remi Delon的目标之一,是使得CherryPy尽可能的体现Python原则。这允许开发者将这个框架同任何正规Python模块一样的使用,而忘记(从技术的角度)这个应用是用于web。

例如,常见的Hello World程序用CherryPy 3将写为如下:

import cherrypy class HelloWorld: def index(self): return "Hello World!" index.exposed = True cherrypy.quickstart(HelloWorld()) 

特征

CherryPy实现了:

  • 遵循HTTP/1.1、WSGI线程池的webserver[4]。典型的,CherryPy自身每页只用1–2ms[5][6]
  • 支持任何任何其他启用WSGI的web服务器或适配器,包括ApacheIISlighttpdmod_python英语mod_pythonFastCGISCGImod_wsgi英语mod_wsgi
  • 一个原生的mod_python英语mod_python适配器。
  • 多个HTTP服务器(就是有能力监听多个端口)[7]
  • 一个插件系统[8],CherryPy插件挂钩到在服务器进程内的事件,服务器启动、服务器关闭、服务器退出等,用来执行在服务器启动和关闭时需要运行的代码。
  • 内建工具用于缓存编码会话授权、静态内容和其他。CherryPy工具挂钩到在请求处理内的事件。在CherryPy服务器收到一个请求的时候,它有一组特定的步骤要履行来处理这个请求。页面处理器只是这个处理的步骤之一。工具还提供语法和配置API来为特定集合的处理器而打开和关闭它们。
  • 给开发者和部署者的一个配置系统[9][10][11]。CherryPy部署可配置于站点上、应用上和在控制器层面上,通过Python字典、配置文件和打开文件对象。
  • 一个完全的测试套件用于核心功能和有关框架,可以用来测试CherryPy应用[12]
  • 内建剖析自从v2.1[13]覆盖[14]和测试支持。

CherryPy不强制使用特定对象关系映射器(ORM)、模板语言英语Web template systemJavaScript库

可用于CherryPy的模块

  • Routes,一个Ruby on Rails的路由系统的Python重新实现,用于映射URL到控制器/行动和生成URL[15]

对象关系映射器

模板语言

  • Mako[17],用Python写的模板库,可用于简单的CherryPy工具[18]
  • Cheetah英语CheetahTemplate,开源模板引擎英语Web template system和代码生成工具,用Python写成。
  • CherryTemplate,CherryPy的模板语言。
  • Genshi英语Genshi (templating language)[19][20],强力的XML模板引擎。
  • Jinja,通用模板语言。CherryPy拥有使用Jinja模板的一个工具[21]
  • Kid英语Kid (templating language),一个简单的模板语言,用于基于XML的用Python写的词汇表。

参见

引用

  1. ^ . [2021-03-12]. (原始内容存档于2018-12-15). 
  2. ^ 2.0 2.1 Release v18.8.0. 2022年7月18日 [2022年7月18日]. 
  3. ^ . BitBucket. [2015-02-21]. (原始内容存档于2017-07-15). 
  4. ^ . [2021-03-12]. (原始内容存档于2021-05-14). 
  5. ^ . [2009-09-23]. (原始内容存档于2016-03-03). 
  6. ^ How fast is CherryPy? 互联网档案馆的,存档日期2010-02-10.
  7. ^ . [2009-09-23]. (原始内容存档于2016-03-03). 
  8. ^ Custom engine plugins with CherryPy 互联网档案馆的,存档日期2009-05-03.
  9. ^ Configuration system of CherryPy 互联网档案馆的,存档日期2009-06-26.
  10. ^ Configuration API of CherryPy 互联网档案馆的,存档日期2009-07-01.
  11. ^ . [2021-03-12]. (原始内容存档于2010-08-18). 
  12. ^ How to test CherryPy itself 互联网档案馆的,存档日期2009-09-27.
  13. ^ Profiler module of CherryPy 互联网档案馆的,存档日期2010-02-09.
  14. ^ . [2009-09-23]. (原始内容存档于2015-11-17). 
  15. ^ . [2021-03-13]. (原始内容存档于2019-11-28). 
  16. ^ . [2021-03-13]. (原始内容存档于2021-01-17). 
  17. ^ . [2021-03-12]. (原始内容存档于2021-05-11). 
  18. ^ . [2009-09-21]. (原始内容存档于2016-03-03). 
  19. ^ CherryPy – Genshi. [2009-09-26]. (原始内容存档于2012-07-04). 
  20. ^ . [2009-09-26]. (原始内容存档于2012-02-27). 
  21. ^ . [2009-09-23]. (原始内容存档于2015-09-05). 

外部链接

  • 官方网站  

cherrypy, 是一个面向对象的web应用框架, 使用了python编程语言, 它设计用于web应用的快速开发, 通过包裹http协议, 但停留在低层而不提供超出rfc, 7231所定义的东西, 開發者, team初始版本2002年6月, 20年前, 2002, 目前版本18, 2022年7月18日, 穩定版本, 源代码库, repository编程语言python操作系统跨平台许可协议bsd许可证, 网站cherrypy, orgweb应用框架自身可以是个web服务器, 也可以通过任何wsgi兼容环境来启动它. CherryPy是一个面向对象的web应用框架 使用了Python编程语言 它设计用于web应用的快速开发 通过包裹HTTP协议 但停留在低层而不提供超出RFC 7231所定义的东西 CherryPy開發者CherryPy team初始版本2002年6月 20年前 2002 06 1 目前版本18 8 0 2022年7月18日 穩定版本 2 源代码库CherryPy Repository编程语言Python操作系统跨平台许可协议BSD许可证 3 网站cherrypy wbr orgWeb应用框架CherryPy自身可以是个web服务器 也可以通过任何WSGI兼容环境来启动它 它不处置用于输出呈现的模板或后端访问的任务 这个框架可以采用过滤器来扩展 它被调用于请求 响应处理的确定点上 目录 1 Python化接口 2 特征 2 1 可用于CherryPy的模块 2 1 1 对象关系映射器 2 1 2 模板语言 3 参见 4 引用 5 外部链接Python化接口 编辑这个项目创立者Remi Delon 英语 Remi Delon 的目标之一 是使得CherryPy尽可能的体现Python原则 这允许开发者将这个框架同任何正规Python模块一样的使用 而忘记 从技术的角度 这个应用是用于web 例如 常见的Hello World程序用CherryPy 3将写为如下 import cherrypy class HelloWorld def index self return Hello World index exposed True cherrypy quickstart HelloWorld 特征 编辑CherryPy实现了 遵循HTTP 1 1 WSGI的线程池的webserver 4 典型的 CherryPy自身每页只用1 2ms 5 6 支持任何任何其他启用WSGI的web服务器或适配器 包括Apache IIS lighttpd mod python 英语 mod python FastCGI SCGI和mod wsgi 英语 mod wsgi 一个原生的mod python 英语 mod python 适配器 多个HTTP服务器 就是有能力监听多个端口 7 一个插件系统 8 CherryPy插件挂钩到在服务器进程内的事件 服务器启动 服务器关闭 服务器退出等 用来执行在服务器启动和关闭时需要运行的代码 内建工具用于缓存 编码 会话 授权 静态内容和其他 CherryPy工具挂钩到在请求处理内的事件 在CherryPy服务器收到一个请求的时候 它有一组特定的步骤要履行来处理这个请求 页面处理器只是这个处理的步骤之一 工具还提供语法和配置API来为特定集合的处理器而打开和关闭它们 给开发者和部署者的一个配置系统 9 10 11 CherryPy部署可配置于站点上 应用上和在控制器层面上 通过Python字典 配置文件和打开文件对象 一个完全的测试套件用于核心功能和有关框架 可以用来测试CherryPy应用 12 内建剖析自从v2 1 13 覆盖 14 和测试支持 CherryPy不强制使用特定对象关系映射器 ORM 模板语言 英语 Web template system 或JavaScript库 可用于CherryPy的模块 编辑 Routes 一个Ruby on Rails的路由系统的Python重新实现 用于映射URL到控制器 行动和生成URL 15 对象关系映射器 编辑 SQLAlchemy 用于Python应用的一个数据库后端和ORM SQLObject 一个流行的ORM用于提供到数据库的对象接口 支持很多常见数据库后端 包括在发行中的有MySQL PostgreSQL SQLite Sybase SQL Server MaxDB Microsoft SQL Server和Firebird Storm 英语 Storm software Canonical公司的ORM MongoEngine 用于连接到MongoDB的ODM 16 模板语言 编辑 Mako 17 用Python写的模板库 可用于简单的CherryPy工具 18 Cheetah 英语 CheetahTemplate 开源模板引擎 英语 Web template system 和代码生成工具 用Python写成 CherryTemplate CherryPy的模板语言 Genshi 英语 Genshi templating language 19 20 强力的XML模板引擎 Jinja 通用模板语言 CherryPy拥有使用Jinja模板的一个工具 21 Kid 英语 Kid templating language 一个简单的模板语言 用于基于XML的用Python写的词汇表 参见 编辑各網頁框架系統的比較引用 编辑 History of CherryPy 2021 03 12 原始内容存档于2018 12 15 2 0 2 1 Release v18 8 0 2022年7月18日 2022年7月18日 cherrypy CherryPy source cherrypy LICENSE txt BitBucket 2015 02 21 原始内容存档于2017 07 15 存档副本 2021 03 12 原始内容存档于2021 05 14 CherryPy v3 WSGI server benchmark results 2009 09 23 原始内容存档于2016 03 03 How fast is CherryPy 互联网档案馆的存檔 存档日期2010 02 10 How to set up multiple HTTP servers with CherryPy 2009 09 23 原始内容存档于2016 03 03 Custom engine plugins with CherryPy 互联网档案馆的存檔 存档日期2009 05 03 Configuration system of CherryPy 互联网档案馆的存檔 存档日期2009 06 26 Configuration API of CherryPy 互联网档案馆的存檔 存档日期2009 07 01 Short summary of configuration options 2021 03 12 原始内容存档于2010 08 18 How to test CherryPy itself 互联网档案馆的存檔 存档日期2009 09 27 Profiler module of CherryPy 互联网档案馆的存檔 存档日期2010 02 09 How to collect and the analyse coverage data of application code with CherryPy 2009 09 23 原始内容存档于2015 11 17 Routes Documentation 2021 03 13 原始内容存档于2019 11 28 mongoengine org 2021 03 13 原始内容存档于2021 01 17 Mako Templates for Python 2021 03 12 原始内容存档于2021 05 11 A simple CherryPy tool for Mako templating 2009 09 21 原始内容存档于2016 03 03 CherryPy Genshi 2009 09 26 原始内容存档于2012 07 04 Genshi CherryPy Tools Trac 2009 09 26 原始内容存档于2012 02 27 A basic CherryPy Tool for using Jinja templates 2009 09 23 原始内容存档于2015 09 05 外部链接 编辑官方网站 取自 https zh wikipedia org w index php title CherryPy amp oldid 71578763, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。