TurboGears 1.x的多协议Web服务
TGWebServices的Python项目详细描述
TurboGears为您提供了一个带有JSON返回的纯HTTP 免费为您的应用程序设置API值。这并不总是你想要的, 不过。有时,您不想将所有数据公开到Web 你需要呈现你的模板。也许你需要支持 将其调用的函数命名为其所发布内容的一部分的协议 例如soap或xml-rpc。
tgwebservices为创建 可通过soap、http->;xml和http->;json获得。soap api生成 为您的python自动生成wsdl,甚至生成足够的类型 静态类型语言(例如Java和C)的信息 在客户端生成好的客户端代码。
有多容易?
class Multiplier(WebServicesRoot): @wsexpose(int) @wsvalidate(int, int) def multiply(self, num1, num2): return num1 * num2
在根目录下,soap客户机可以在/soap/api.wsdl找到wsdl文件 并将soap请求发送到/soap/。http请求/乘法?num1=5&num2=20 将返回结果为100的XML文档。加上?tg_format=json(或 一个http-accept:text/javascript头),您将得到json。
最棒的是上面的代码看起来像一个“正常”的 python函数“”,对web服务一无所知。
更完整的文档可以在 http://wiki.tgws.googlecode.com/hg/index.html。
功能
- 公开web服务api的最简单方法
- 支持soap、http+xml、http+json
- 输出包装的文档/文本soap,它是最广泛的 兼容格式
- 为静态类型语言提供足够的类型信息 生成方便使用的接口
- 可以输出自己类的实例
- 也可以接受类的实例作为输入
- 适用于涡轮齿轮1.0和1.1
- MIT许可证允许无限制使用