我正在使用 Swagger 编辑器生成 YAML/JSON 代码,该代码将在 Swagger UI 中显示 API 的详细信息。
我希望 API 的使用者能够查看 API 文档的修订历史记录(例如添加的字段、从“可选”更改为“必需”的字段等)。Swagger 支持此功能吗?
使用 sphinx-apidoc 生成.rst文件时,输出结果不包含任何标签:
dessn.examples package
======================
.. automodule:: dessn.examples
:members:
:undoc-members:
:show-inheritance:
Subpackages
-----------
.. toctree::
dessn.examples.discrete
dessn.examples.simple
Run Code Online (Sandbox Code Playgroud)
我想做的是从自定义主页链接到特定页面,该主页不是使用 apidoc 生成的。但是,我找不到任何方法来调用 api-doc 并让它自己生成标签,我也无法找出任何正确的方法来简单地链接到.rst没有标签的右侧,并且不需要简单地键入我知道会的绝对 html 文件产生。
我可以使用该::include语句,并且它工作得很好,但我完全找不到一个可以简单地生成指向第一个文件的超链接的语句。
我是否在这里遗漏了一些明显的东西,或者我是否必须找到一种方法来使 api-doc 插入标签?
干杯
我使用 docstrings 来记录 python 代码,并使用 sphinx-autodoc 来生成 apidoc HTML。我的包的结构如下:mainpackage.subpackage.module,我希望 apidocs 从模块中链接到类,而mainpackage.subpackage.Class不是mainpackage.subpackage.module.Class。我的问题来自scikit-multilearn项目,例如:我MLClassifierBase在 中有一个类skmultilearn.base.base,但我将其导入到 中__init__.py,skmultilearn.base并且我希望 sphinx 生成的 apidocs 仅使用此类,skmultilearn.base.MLClassifierBase而不是skmultilearn.base.base.MLClassifierBase像现在那样使用该类。有人可以帮忙吗?
我已经尝试过:
在每个Sphinx apidocadd_module_names = False中设置- 不打印包和模块的完整路径conf.py
添加""".. automodule:: base"""到skmultilearn/base/__init__.py
添加__all__ = ['MLClassifierBase']到skmultilearn/base/__init__.py
添加.. autoclass:: base.MLClassifierBase到类文档中
我仍然有一个Bases: skmultilearn.base.base.MLClassifierBase在每个派生自 的类中MLClassifierBase。我该如何改变这个?
我正在使用 Symfony 框架并打算将自动文档引擎添加到我的项目的 RESTful api 中。
经过一番搜索,我找到了 apidoc 引擎(http://apidocjs.com/)。它的工作原理非常简单:您必须为 RESTful api 的每个控制器添加一些注释,并且将生成文档。
注解的例子是:
/**
* @Route("/api/dictionary_list/{userId}/{sessionKey}", name="api/dictionary_list")
* @api {get} /api/dictionary_list/{userId}/{sessionKey} 01. Values list (ids) for all system dictionaries
* @apiName Dictionary list
* @apiGroup Dictionary
*
* @apiParam {Integer} userId User's ID received in authorization request
* @apiParam {String} sessionKey Session key received in authorization request
*
* @apiSuccess {Integer} parcelStatuses The name of current dictionary
* @apiSuccess {String} itemId Item id which used in requests
* …Run Code Online (Sandbox Code Playgroud) 我有一个 nodejs 项目,其中包含许多请求并由 apiDoc 详细记录,我想从中创建一个 Postman 集合!
> example:
/**
* @api {GET} config/updates Updates - Get the latest event updates
* @apiGroup Config service
* @apiDescription This api endpoint provides the latest updates that need to be fetched by the client. It provides
* an array of events, based on either the latestupdate (timestamp) param, or a configured interval (currently default to 1 minute.
...
..
*/
Run Code Online (Sandbox Code Playgroud)
可以从 apiDoc 创建邮递员集合吗?
我需要查看旧 TF 版本 (0.12.1) 的 TensorFlow API 文档。该网站将我指向 GitHub 分支。通过检查相应分支的子包中的代码,我能够找到我的信息。但是,我正在寻找一种有效搜索旧 api 信息的方法,即使用网站上提供的搜索栏和分层树搜索(网站左侧)等。
有没有更快的方法,如果有,除了在这种情况下搜索 .md 和代码文件之外,最好的方法是什么?
我是OpenAPI3.0.0 的新手。
我已经使用openapi-generator成功创建了一个 java 客户端库。
但是OpenAPIGenerator 允许生成 API 客户端库(SDK 生成)、服务器存根、文档。所以我想知道是否有任何命令或步骤可用于生成 HTML 文档以及自定义文档模板。
我正在从 swagger 2 迁移到 OpenApi 3。
Swagger 2 示例代码
@ApiOperation(value = "", nickname = "")
@GetMapping
public List<Employee> findEmployees(@Valid Dto dto) {
return employeeService.findEmployees(dto);
}
Run Code Online (Sandbox Code Playgroud)
OpenApi 3 代码
@Operation(summary = "")
@GetMapping
public List<Employee> findEmployees(@Valid Dto dto) {
return employeeService.findEmployees(dto);
}
Run Code Online (Sandbox Code Playgroud)
DTO类
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class Dto {
private String status;
private String name;
private String destination;
}
Run Code Online (Sandbox Code Playgroud)
在这两种情况下,swagger-ui 的生成存在显着差异。
Swagger 2 将 DTO 对象显示为扁平化为单个查询参数:
Swagger 2 ui 中发生单个查询参数时对象的图像扁平化
而 OpenApi 3 创建了一个 JSON 对象 …
我正在使用darkaonline/l5-swagger: 7.0基于OpenApi 3.0. 但问题是required验证仅适用于path参数,不适用于表单数据属性。我尝试在数组中添加所需的属性名称,但它仅显示required红色文本,但在执行时不验证。
/**
* @OA\Post(
* path="/sign-in",
* operationId="signIn",
* tags={"Authentication"},
* summary="AuthenticationController@signIn",
* description="Login",
* @OA\RequestBody(
* required=true,
* @OA\MediaType(mediaType="multipart/form-data",
* @OA\Schema(
* required={"email","password"},
* @OA\Property(
* property="email",
* type="string",
* description="Email"
* ),
* @OA\Property(
* property="password",
* type="string",
* description="Password"
* ),
* )
* )
* ),
* @OA\Response(
* response=200,
* description="Successful",
* ),
* @OA\Response(
* response=401,
* description="Unauthorized",
* ),
* …Run Code Online (Sandbox Code Playgroud) 我的公司使用 Open API Spec 来组织内部 API 的文档,并通过 UI 工具(例如 redoc.ly 或 Swagger)呈现它。API 文档作为私有 git 存储库进行管理,永远不会向公众发布。
Swagger 为开源项目提供了很好的示例,例如 MIT、GPL、“Apache 2.0”,但私有 API 文档似乎没有涵盖。
https://spec.openapis.org/oas/latest.html#license-object
{
"name": "Apache 2.0",
"url": "https://www.apache.org/licenses/LICENSE-2.0.html"
}
Run Code Online (Sandbox Code Playgroud)
我看到有些人以这种方式指定他们的许可证。
license:
- name: unlicensed
- url: "www.example.com"
Run Code Online (Sandbox Code Playgroud)
私有 API 文档项目的合适许可证是什么?
您通常如何在私有 Open API 文档中表示许可证对象?
api-doc ×10
openapi ×4
swagger ×4
python ×3
swagger-2.0 ×2
annotations ×1
api ×1
autodoc ×1
doctrine-orm ×1
hyperlink ×1
laravel ×1
php ×1
postman ×1
redoc ×1
redocly ×1
spring-boot ×1
symfony ×1
tensorflow ×1
yaml ×1