@elysia/ openapi
爱莉西亚 添加 OpenAPI 文档的插件 .
安装
bun add @elysia/openapi
示例
import { Elysia, t } from 'elysia'
import { openapi } from '@elysia/openapi'
const app = new Elysia()
.use(openapi())
.get('/', () => 'hi', {
response: t.String({ description: 'sample description' })
})
.post(
'/json/:id',
({ body, params: { id }, query: { name } }) => ({
...body,
id,
name
}),
{
params: t.Object({
id: t.String()
}),
query: t.Object({
name: t.String()
}),
body: t.Object({
username: t.String(),
password: t.String()
}),
response: t.Object(
{
username: t.String(),
password: t.String(),
id: t.String(),
name: t.String()
},
{ description: 'sample description' }
)
}
)
.listen(3000)
那就去那边 http://localhost:3000/openapi。 。 。 .
配置
启用
@ 默认为真 启用/ 禁用插件
打开apiVersion
@ 默认' 3.1.2'
要发射的 OpenAPI 文档版本 。 支持 OpenAPI 3.0.x 财务报告和审定财务报表 3.1.x。 。 。 .
文档
OpenAPI 文档信息
@ 见 https://spec.openapis.org/oas/latest.html (中文(简体) )
排除
从文档中排除路径或方法的配置
排除.方法
从文件中删除的方法清单
排除.路径
排除文档的路径清单
排除.静态文件
@ 默认为真
从文档中排除静态文件路径
排除
从文档中排除的标签清单
路径
默认“ / openapi ”
曝光 OpenAPI 文档前端的终点
提供者
默认“ scalar ”
OpenAPI 文档前端介于 :
参考文献
每个端点的额外 OpenAPI 引用
斯卡尔
Scalar 配置, 参考 斯卡拉尔配置
光谱
@ 默认“ ${ path}/ json”
用 JSON 格式曝光 OpenAPI 规格的终点
摇摆
Swagger 配置, 参考 斯瓦格配置
见 文档 更多细节.