简化restapi的编写,并用附加协议扩展它们。
WSME的Python项目详细描述
webservicesmakeeasy(wsme)简化了rest web服务的编写 通过提供简单而强大的类型,消除了直接 操作请求和响应对象。
wsme可以独立工作,也可以在您最喜欢的python web上工作。 (micro)框架,因此您可以使用您首选的路由方式 依赖于输入系统的请求和wsme的大多数功能,如:
- 备用协议,包括支持批处理调用的协议
- 通过扩展名Sphinx轻松编写文档
wsme最初是tgwebservices的重写 关注可扩展性、框架独立性和更好的类型处理。
有多容易?
下面是一个独立的wsgi示例:
from wsme import WSRoot, expose class MyService(WSRoot): @expose(unicode, unicode) # First parameter is the return type, # then the function argument types def hello(self, who=u'World'): return u"Hello {0} !".format(who) ws = MyService(protocols=['restjson', 'restxml', 'soap']) application = ws.wsgiapp()
在应用程序的/ws路径上发布此文件后,您可以访问 您的hello函数在各种协议中:
URL | Returns |
---|---|
^{tt2}$ | ^{tt3}$ |
^{tt4}$ | ^{tt5}$ |
^{tt6}$ | A WSDL description for any SOAP client. |
主要功能
- 非常简单的api。
- 支持用户定义的简单和复杂类型。
- 多协议:rest+json、rest+xml、soap、extdirect等等。
- 可扩展性:易于添加更多协议或更多基本类型。
- 框架独立性:提供适配器以便于集成 任何web框架中的api,例如wsgi容器, Pecan,TurboGears,Flask,cornice…
- 很少有运行时依赖项:webob、simplegeneric。可选LXML和 如果你需要更好的表现。
- 集成在Sphinx中,以便使用 wsmeext.sphinxext。
安装
pip install WSME
或者,如果您的系统或virtualenv上没有pip
easy_install WSME
更改
获取帮助
- 阅读WSME Documentation。
- 关于wsme的问题应该转到python-wsme mailinglist。