轻松定义HTTP API。
项目描述
strut
使用HTTP格式化标准简化定义Web API。
Swagger/OpenAPI规范通常非常通用且非常有用。困难之处在于需要记住字段名称或文档的结构。必填字段在编译swagger时会带来很多噪音。
本规范的目的是通过更直观的输入,使定义HTTP端点变得更加容易。通过最小化格式和结构,并利用HTTP标准(可能开发者已经了解),可以更快、更容易地定义API。
安装
pip install strut
创建定义
为了充分利用这个库,有几种简单构造定义的方法。
.http
文件
.http
文件由一系列HTTP消息组成,可以用来描述一个服务。标准HTTP消息(由 rfc2616 定义)由双换行符分隔(与HTTP头和主体分隔的方式相同)。文件可以作为 list
的 HttpRequest
对象读取。
最简单的定义可以通过双换行符分隔的 Http Message Request lines 实现。
GET /kittens
GET /dogs
Content-Type: application/json
strut swagger filename.http
作为服务的规范聚合
通过在本地运行 strut-server
脚本,您可以使用网页浏览器、curl、Postman 或任何其他HTTP客户端来调用该服务,并轻松积累规范。
可以将这些保存为 .http
格式文件以供重用。
以下是一个示例技术
pip install strut
strut-server &
> serving at port 4110
curl http://localhost:4110/kittens/
curl http://localhost:4110/dogs/
curl -XPOST http://localhost:4110/kittens/
这将生成以下swagger规范
info:
description: ''
title: Generated by Strut
version: 1.0.0
openapi: 3.0.0
paths:
/dogs:
get:
description: ''
responses:
'200':
description: ''
/kittens:
get:
description: ''
responses:
'200':
description: ''
post:
description: ''
responses:
'200':
description: ''
功能
文档
通过生成 Swagger yaml/json,该项目可以利用丰富的GUI定义社区。
将 .http
文件转换为 Swagger 文档
# yaml
strut swagger filename.http
# json
strut swagger-json filename.http
测试
此格式应能推断标准 Gherkin 语法 测试,从而自动生成测试。
strut gherkin definition.http
代码生成
通过编译到 Swagger 代码,可以生成服务器代码。请参阅 "Generate Server" 选项卡下的 editor.swagger.io/ 上的示例实现。
strut swagger definition.http
网络脚本
http
文件可以描述对 web 服务器进行的一系列请求。这可以用来编写对服务的脚本,未来迭代中可能对多个服务进行脚本编写。
项目生命周期
测试项目
pytest
解析和渲染
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。
源代码分发
构建分发
strut-1.1.1-py2-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 953795715f1f5bc2c424c9a05aedba72e4071decf9dbaed939d8a663a9bd50df |
|
MD5 | c8244fe6b94010cf10e94200a17e04fd |
|
BLAKE2b-256 | 5d0f8db9ef39beae751334dd99b70bace7148c773fd1d0c6a7b2c1d92cfa58b5 |