Kiota 是一个命令行工具,用于生成 API 客户端来调用您感兴趣的任何 OpenAPI 描述的 API。目标是消除您需要调用的每个 API 对不同 API SDK 的依赖。 Kiota API 客户端提供强类型体验以及您期望从高质量 API SDK 获得的所有功能,但无需为每个 HTTP API 学习新的库。
该库构建在 Microsoft.OpenAPI.NET 库之上,以确保对使用 OpenAPI 描述的 API 的全面支持。该项目的目标之一是为 OpenAPI 和 JSON Schema 功能提供最佳的代码生成器支持。概念文档描述了 kiota 的工作原理和高级概念,本自述文件记录了如何开始使用 Kiota。
下表概述了 Kiota 支持的语言以及不同组件的实施进度。
语言 | 一代 | 抽象 | 序列化 | 验证 | HTTP协议 | 所需工具和依赖项 |
---|---|---|---|---|---|---|
命令行界面 | (参见 CSharp)+ | (参见 CSharp) | (参见 CSharp) | (参见 CSharp) | 关联 | |
夏普 | ✔ | ✔ | 表单、JSON、多部分、文本 | 匿名、API 密钥、Azure | ✔ | 关联 |
镖 | ▶ | 表单、▶ JSON、▶ 多部分、文本 | 匿名、API 密钥 | |||
去 | ✔ | ✔ | 表单、JSON、多部分、文本 | 匿名、API 密钥、Azure | ✔ | 关联 |
爪哇 | ✔ | ✔ | 表单、JSON、多部分、文本 | 匿名、API 密钥、Azure | ✔ | 关联 |
PHP | ✔ | ✔ | JSON、表单、多部分、文本 | 匿名,✔️ PHP 联盟 | ✔ | 关联 |
Python | ✔ | ✔ | 表单、JSON、多部分、文本 | 匿名,蔚蓝 | ✔ | 关联 |
红宝石 | 表单、JSON、多部分、文本 | 匿名、OAuth2 | ||||
迅速 | 表单、JSON、表单、文本 | 匿名,蔚蓝 | ||||
TypeScript/JavaScript | 表单、JSON、多部分、文本 | 匿名、API 密钥、Azure、SPFx | 关联 |
图例:✔ -> 稳定,-> 预览中,-> 未开始,▶ -> 正在进行。
参数记录在此处。
确保首先安装先决条件。如果您使用 Visual Studio Code 作为 IDE,则launch.json文件已包含运行 Kiota 的配置。默认情况下,此配置将使用 PowerShell 存储库下的openApiDocs/v1.0/Mail.yml
作为 OpenAPI 来生成 SDK。默认情况下,此配置将在 graphdotnetv4|graphjavav4|graphtypescriptv4 文件夹中输出生成的文件,该文件夹位于此存储库克隆的父文件夹中。
在 Visual Studio 调试选项卡中选择要为其生成 API 客户端的语言,然后按F5将自动构建、启动调试进程并将其附加到 Kiota。
您可以在 Kiota 示例存储库中找到使用 Kiota 生成的客户端示例。
调用多个 API 的应用程序示例可以在 KiotaApp 存储库中找到
该项目欢迎贡献和建议。大多数贡献都要求您同意贡献者许可协议 (CLA),声明您有权并且实际上授予我们使用您的贡献的权利。有关详细信息,请访问 https://cla.opensource.microsoft.com。
当您提交拉取请求时,CLA 机器人将自动确定您是否需要提供 CLA 并适当地修饰 PR(例如,状态检查、评论)。只需按照机器人提供的说明进行操作即可。您只需使用我们的 CLA 在所有存储库中执行一次此操作。
该项目采用了微软开源行为准则。有关详细信息,请参阅行为准则常见问题解答或联系 [email protected] 提出任何其他问题或意见。
该项目可能包含项目、产品或服务的商标或徽标。 Microsoft 商标或徽标的授权使用须遵守且必须遵循 Microsoft 的商标和品牌指南。在此项目的修改版本中使用 Microsoft 商标或徽标不得引起混淆或暗示 Microsoft 赞助。对第三方商标或徽标的任何使用均须遵守这些第三方的政策。