跳转到主要内容

简化REST API的编写,并使用额外的协议进行扩展。

项目描述

Web Services Made Easy (WSME)通过提供简单但强大的类型化,去除直接操作请求和响应对象的需要,简化了REST Web服务的编写。

WSME可以独立工作,也可以在你的 favorite Python web (micro) framework 上使用,因此你可以使用你喜欢的路由 REST 请求的方式,以及大多数依赖于类型系统的 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'])
application = ws.wsgiapp()

将此发布在您的应用程序的/ws路径上,您可以通过各种协议访问您的hello函数

URL

返回

http://<服务器>/ws/hello.json?who=you

"Hello you !"}

http://<服务器>/ws/hello.xml

<result>Hello World !</result>

主要功能

  • 非常简单的API。

  • 支持用户定义的简单和复杂类型。

  • 多协议:REST+JSON、REST+XML等。

  • 可扩展:易于添加更多协议或更多基本类型。

  • 框架无关性:提供适配器,可轻松将API集成到任何Web框架中,例如WSGI容器、PecanFlask等。

  • 运行时依赖项很少:webob、simplegeneric。

  • 通过Sphinx集成,使用wsmeext.sphinxext生成干净的文档。

安装

pip install WSME

变更

获取帮助

贡献

项目详情


下载文件

为您的平台下载文件。如果您不确定要选择哪个,请了解有关安装软件包的更多信息。

源代码分发

WSME-0.12.1.tar.gz (90.2 kB 查看哈希值)

上传时间: 源代码

构建分发

WSME-0.12.1-py3-none-any.whl (59.6 kB 查看哈希值)

上传时间 Python 3

由以下机构支持