在现代 Web 应用程序的开发过程中,接口设计是一个非常重要的环节,而 Swagger 是一种非常流行的 API 设计语言和工具。既然有了 Swagger,就自然会有许多工具来帮助我们对其进行运用和管理,其中包括 swagger-openwhisk-codegen 这个 npm 包,这个包可以将 Swagger 文件快速生成出 OpenWhisk 的函数形式,方便我们进行后续的开发、测试和部署等工作。
本文将为大家介绍 npm 包 swagger-openwhisk-codegen 的安装和 使用方法,并附上实际的示例代码,帮助读者更快更好地使用这个强大的工具。
1. 安装
安装 swagger-openwhisk-codegen 可以使用 npm 命令进行,具体方式如下:
npm install swagger-openwhisk-codegen --global
这个命令会自动将 swagger-openwhisk-codegen 安装到你的计算机全局环境中,并可以在命令行中使用。
2. 使用
在安装好 swagger-openwhisk-codegen 之后,我们需要准备 Swagger 文件,在这个过程中,Swagger 的正确性非常重要,因为这决定了 swagger-openwhisk-codegen 是否能够正确生成 OpenWhisk 函数代码。在准备好 Swagger 文件后,我们就可以使用这个命令,将其转换成 OpenWhisk 的函数形式,步骤如下:
在命令行中输入以下命令:
swagger-openwhisk-codegen generate
然后会出现一些提示信息,让我们做出一些选择,如图所示:
根据实际情况,我们可以依次填写这些信息,其中最重要的是 Swagger 文件的路径,这是生成 OpenWhisk 函数的最基础的信息。
填写完毕以后,swagger-openwhisk-codegen 就会自动将 Swagger 文件转换为 OpenWhisk 的函数形式,并在命令行中输出具体的代码内容,如下所示:
-- -------------------- ---- ------- ---- -------- ----- ------- - ------------------- ----- --------- - --------------------- -------- ------------ - -- -------------------- - ----------------- - --- - ----------------- - -------------------------------- -------------------- ------------------ ----------------- - ----------------- -------- --- ------- - - ---- -------------------------------------- ------- ------ --- -- -- ---------------- ------------------ - ------------ - ------ --- ----------------- ------- -- - ---------------- -------- ------- --------- ----- - -- ------- - --------------------- ------- -------------- - ---- - -------------------------- - --- --- -
具体的代码内容会根据 Swagger 文件的内部信息而不同。
3. 示例代码
在本篇文章的后续,我们将使用一个实际的示例来演示如何使用 swagger-openwhisk-codegen,这个示例是一个非常简单的 Swagger 文件,描述了一个获取宠物属性信息的 API,我们将其转换为 OpenWhisk 函数后,可以使用 IBM Cloud Functions 来进行测试和部署。
Swagger 文件如下:
-- -------------------- ---- ------- -------- ----- ----- ------ -------- --- -------- ----- ----- ------------------- --------- ----- -------- - ---- --------- - ---------------- --------- - ---------------- ------ ------------- ---- ----- - --- -------- ---- --- -- -- ------------ ------- - ------ --- ------------ ---------- ----------- - ----- ----- --- ---- ------------ -- -- --- -- ------ --------- ---- ----- ------- ------- ----- ---------- ---- ------------ ---------- --------- ------- ----- ------------------- ---- ------------ ------- -- -------- ---- ------------ --- --- ----- ----- ----- - --- -------- --- - --- --- -- --- ----- ------------ ------ ----------- - --- ---- ----- ---- ------------ --- ------ ---- ----- -- -- ----- -- --- ----- --------- ---- ------- ----- ------------------- ---------- ---- ------------ ------- ----- ----- ---- ----- - --- -------- ------- --- ---- ---- --- ------ ---- --- ---- --- ------ -- ------------ -------- ----------- - ----- ---- --- ----- ------------ ---- -- ------ -- --------- ----- ----- ----- ------ ----- ------ ----------------- --- - ----- ----- --- ----- ------------ ------- ------ -- ------- -- ------ --------- ----- ----- ------- ------- ----- ---------- ---- ------------ --- -------- ------- ----- ----- ------ ----- ------------------- ------------ ---- ----- ------ ----------- --- ----- ------- ------- ----- --------- ----- ------------------------ ----- ----- ------ -------- ------ ---------- ----- ----- ------ ----- ------ ----- ----- ----- ------ ----- ------------------- ------- ----- ------ ------------ --- ------ -- --- ----- ----- - --------- - ------- - ---- ---- ----- --- --------- ----- ------ ----------- --- ----- ------- ------- ----- ----- ----- ------ ---- ----- -------- ---- ----- ------ ----------- --- ----- ------- ------- ----- ----- ----- ------ ---- ----- ---
使用 swagger-openwhisk-codegen 可以将这个文件快速转换为 OpenWhisk 函数代码。
-- -------------------- ---- ------- ---- -------- ----- ------- - ------------------- ----- --------- - --------------------- -------- ------------ - -- -------------------- - ----------------- - --- - ----------------- - -------------------------------- -------------------- ------------------ ----------------- - ----------------- -------- --- ------- - - ---- -------------------------------------- ------- ------ --- -- -- ---------------- ------------------ - ------------ - ------ --- ----------------- ------- -- - ---------------- -------- ------- --------- ----- - -- ------- - --------------------- ------- -------------- - ---- - -------------------------- - --- --- -
在得到函数代码后,我们可以将其上传到 IBM Cloud Functions 里进行部署,具体步骤如下:
- 在 IBM Cloud Functions 中创建新的函数,选择“创建”,然后选择“函数”。
- 在函数设置中,选择“代码”,然后选择“在线编辑器”,将刚刚获得的代码粘贴到编辑器中。
- 输入函数的名称,选择“创建”。
- 现在,我们可以使用 IBM Cloud Functions 进行测试和调用,可以使用类似于以下的调用方式:
https://<IBM Cloud Functions 名称>.us-south.functions.appdomain.cloud/api/v1/web/<IBM Cloud Functions 命名空间>/<IBM Cloud 函数名称>?name=doggie
这个调用将会返回所有宠物信息的 JSON 数据,具体数据内容与 Swagger 文件中的定义相符。
4. 总结
如此,我们已经完成了使用 swagger-openwhisk-codegen 的操作和测试,并可以使用 IBM Cloud Functions 进行部署和调用等操作。总体来看,swagger-openwhisk-codegen 是一个非常强大和方便的工具,特别适合需要使用 Swagger 语言进行接口设计的团队和开发者进行使用,如果你目前正在开发基于 Swagger 的 Web 应用程序,那么这个工具就是你不容错过的一个选择。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005553d81e8991b448d271d