阿尔卑斯山-统一-ts
项目描述
阿尔卑斯山-统一-ts
那是alps-unified的增强型 TypeScript 库。有了它,您可以将 ALPS API 规范转换为其他 API 规范,例如 openApi、Graph QL Schema。
了解 ALPS API 的想法非常有用的是 YT 上的这段视频:https ://www.youtube.com/watch?v=oG6-r3UdenE
想了解更多关于 ALPS 的信息吗?--> 请访问:
特征
- 为 JavaScript、TypeScript、Python、Java 和 .NET 生成和发布 alps 统一库
- 对 ALPS 规范的类型支持(参见下面的“从规范创建”示例)
例子
从 YAML 文件加载
您可以直接从 YAML 文件加载 ALPS 规范。不支持 JSON ist atm。
转换为 OpenApi
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
Alps.unified(Alps.load_yaml("test/todo-alps.yaml"),
format_type=FormatType.OPENAPI
)
转换为 GraphQL Schema
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
Alps.unified(Alps.load_yaml("test/todo-alps.yaml"),
format_type=FormatType.SDL
)
从规范创建
从规范创建 API 规范非常强大。因为它在键入和记录时为您提供了像 VS 这样的想法的很多支持。所以你总是产生有效的 API 规范。
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
Alps.unified(
Alps.spec(
alps={
"version": "1.0",
"doc": {
"value": "Simple Todo list example"
},
"ext": [{
"type": "metadata",
"name": "title",
"value": "simpleTodo",
"tags": "oas"
}, {
"type": "metadata",
"name": "root",
"value": "http://api.example.org/todo",
"tags": "oas"
}
],
"descriptor": [{
"id": "id",
"type": "semantic",
"text": "storage id of todo item"
}
]
}
))
为了让 Python 从这些类型中受益,最好这样做:
import alps_unified_ts as alps
alps_def = alps.AlpsDef(
version='1.0',
descriptor=[alps.DescriptorDef(id="id", type="semantic", text="sotrage id of todo item")],
doc=alps.DocDef(
value="Simple Todo list example"),
ext=[
alps.ExtDef(
name="root",
tags="oas",
type="metadata",
value="http://api.example.org/todo"),
alps.ExtDef(
name="title",
tags="oas",
type="metadata",
value="simpleTodo")])
alps.Alps.unified(alps_document=alps.Alps.spec(alps=alps_def), format_type=alps.FormatType.OPENAPI)
谢谢
- 我用于此存储库的存储库工具projen的 AWS CDK 社区。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
alps-unified-ts-0.0.40.tar.gz
(209.6 kB
查看哈希)
内置分布
alps_unified_ts-0.0.40-py3-none-any.whl
(208.0 kB
查看哈希)
关
alps_unified_ts -0.0.40-py3-none-any.whl 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | b1e7ff44a67bd330814958ff3651ff537c3f7268611c3bef586bcc1c470b0c5d |
|
| MD5 | a56090a5f3782bbed9382ff32032792f |
|
| 布莱克2-256 | 5cacdeae4dd81299c4ca539cd21f2ea610c928d92dae4e63db284c09e58b9eb1 |