问题标签 [swagger-jsdocs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
5095 浏览

swagger - Swagger Bearer Authorization 在 ui 中不可用

我正在使用 openApi 3.0 规范、koa2-swagger-ui 和 swagger-jsdoc。我正在尝试获取 swagger ui 上的 Authorize 按钮以允许我输入 JWT 令牌,以便我的请求将被授权。

我按照 OpenApi 3.0 文档在 securitySchemes 中设置了 bearerAuth,并且还使用了安全性使其成为全局性的。所有这些都是在我的 swagger-config.yaml 中实现的。

我想要的是能够在 swagger ui 上单击授权并可以选择输入 JWT。目前,当我单击授权时,该框为空。 空授权 请求响应 401 swagger ui

Swagger.json

招摇配置.yaml

应用程序.js

0 投票
1 回答
5352 浏览

node.js - nodejs中swagger-jsdoc设置的语法错误

我在尝试使用我的 express 应用程序设置 swagger 时遇到语法错误

我试图在此处遵循本教程https://itnext.io/setting-up-swagger-in-a-node-js-application-d3c4d7aa56d4作为快速入门指南,我不知道为什么会出现该错误

这是我的 app.js

这是我的路线./routes/index.js

还有其中一条路线,例如./routes/users

我按照说明操作,我的应用程序应该可以工作,但我收到了一个Error: SyntaxError: Unexpected token u in JSON at position 0 at module.exports (/home/frank/Desktop/Web Dev/Git projects/Way-Farer/node_modules/swagger-jsdoc/lib/index.js:32:11) at Object.<anonymous> (/home/frank/Desktop/Web Dev/Git projects/Way-Farer/api/src/app.js:32:21)错误

0 投票
0 回答
224 浏览

swagger-ui - 如何使 Swagger UI 中的响应示例与 application/application/vnd.api+json 的实际响应相匹配?

我有一个符合 json-api 规范的 API 响应application/vnd.api+json。响应如下所示:

但是,在“Responses”下的 Swagger UI 中,指定了模型的地方,响应示例显示如下,与实际响应不同:

我尝试application/vnd.api+json为 GETcontent属性添加内容类型,但这没有帮助:

如何使 Swagger UI 中的响应示例值与实际 API 响应匹配?

0 投票
1 回答
6859 浏览

express - Swagger openapi 3.0.x 空体

我正在尝试将我的 express api 从 swagger 2.0 迁移到 openapi 3.0.2。swagger 定义和路径是用 swagger-jsdoc 编写的。这应该没有问题,因为他们的文档声明它可以与 openapi 3.x 以及 swagger 2.0 一起使用。

将 openapi: 3.0.x 添加到我的 swaggerDefinition 时,视图看起来不错。但是,当尝试通过 swagger 视图进行发布请求时,正文是空的。

我的招摇定义是这样的:

现在我有一个文件 channels.js 作为路由器:它有以下定义:

用 swagger 2.0 尝试似乎效果很好。我错过了什么?

0 投票
1 回答
5178 浏览

node.js - 现有的 nodeJS 和 swagger JS 文档不起作用

我有一个简单的 nodeJS 项目,想在其中添加招摇。我需要 swaggerUI 和 swaggerJSDoc

这是我的 app.js 文件。

我有几条路线,还有一个 post.js 路线文件。该文件包含在数组中,定义为 swagger。

不幸的是,我在浏览器中没有看到任何 api 定义。 在此处输入图像描述 有人可以帮助我吗?

格兹,皮特

0 投票
1 回答
2333 浏览

node.js - Swagger JSDoc 不从子文件夹加载 API 文件

我正在为 node.js 和 express 框架中的项目集成 swagger doc,

NPM: Swagger JSDoc - ^4.0.0 NPM

以下是文件夹结构:(注意:module-1、module-2 和 module-3 是文件夹!

工作示例:

节点:我不想每次像上面的示例一样创建新模块时都添加模块路径。

我期待的是下面的例子:我想像设置主文件夹/文件路径一样设置一次,它会从提供的主文件夹/文件路径自动加载 API Doc 数据。

我尝试下面的示例,但它不适用于/app/*

请指导是否有任何方法可以做到这一点,任何形式的建议将不胜感激,谢谢。

0 投票
1 回答
656 浏览

node.js - 不生成招摇文档 - Node JS + swaggerJSDoc

我正在尝试为我的 Node JS express API 创建招摇的文档。在 app.js 中添加以下代码:

在其中一种申请途径中添加了以下文档:

访问http://localhost:4000/api-docs.json时生成以下输出

但是,不会生成实际文档。任何解决此问题的帮助将不胜感激。

0 投票
1 回答
1899 浏览

node.js - Swagger - 正文中没有发送数据(swagger-jsdocs,swagger-ui-express)

对于 nodejs 项目,我将 swagger-ui-express 和 swagger-jsdocs 用于 Swagger API。当我尝试使用 Swagger 调用我的应用程序的 POST-Endpoint 时,没有发送任何数据。可能是什么问题呢?我的整个相关代码如下:

Swagger 正在执行 get 请求,但在发送数据时,d-flag 为空。有人有想法吗?

此致

0 投票
1 回答
347 浏览

swagger-jsdocs - swagger-jsdocs:YAMLException:映射条目的缩进错误

需要帮助 swagger-jsdoc 文档。这是我第一次合作。对于以下@swagger jsdoc 文档,我收到以下错误。

错误:YAMLException:第 10 行第 14 列的映射条目缩进错误:示例:^ 位于 object.exports (C:\Documents\node_modules\swagger-jsdoc\lib\index.js:37:11) 处。(C:\GIT Repository\app.js:91:19) 在 Module._compile (internal/modules/cjs/loader.js:651:14) 在 Object.Module._extensions..js (internal/modules/cjs/ loader.js:665:10) 在 Module.load (internal/modules/cjs/loader.js:566:32) 在 tryModuleLoad (internal/modules/cjs/loader.js:506:12) 在 Function.Module._load (internal/modules/cjs/loader.js:498:3) 在 Function.Module.runMain (internal/modules/cjs/loader.js:695:10) 在启动时 (internal/bootstrap/node.js:201:19 ) 在 bootstrapNodeJSCore (internal/bootstrap/node.js:516:3)

0 投票
1 回答
784 浏览

javascript - Swagger-JSdoc 不适用于 Node.JS 14.15.4 错误“ERR_REQUIRE_ESM”

这不是重复的,我已经研究并检查了其他堆栈溢出链接,例如thisthisthis

我像这样在现有的 Node.JS 应用程序中导入了招摇

但错误出现在控制台正在跟踪的 swagger-jsdoc 上

internal/modules/cjs/loader.js:1080 throw new ERR_REQUIRE_ESM(filename, parentPath, packageJsonPath); ^

错误 [ERR_REQUIRE_ESM]: Must use import to load ES Module: D:\myTestProject\node_modules\swagger-jsdoc\index.js 不支持 ES 模块的 require()。来自 D:\myTestProject\index.js 的 D:\myTestProject\node_modules\swagger-jsdoc\index.js 的 require() 是一个 ES 模块文件,因为它是一个 .js 文件,其最近的父 package.json 包含“类型”: “模块”将包范围内的所有 .js 文件定义为 ES 模块。而是将 D:\myTestProject\node_modules\swagger-jsdoc\index.js 重命名为以 .cjs 结尾,将需要的代码更改为使用 import(),或者从 D:\myTestProject\node_modules\swagger 中删除 "type": "module" -jsdoc\package.json。