跳转到内容

检测导入 API 中的问题

当您导入 API(OpenAPI、Swagger 以及其他受支持的格式)时,Restorm 会将该 API 的结构化文档保存在其环境文件夹中。导入之后——以及每次重新打开该文件时——Restorm 都会悄悄地将该文档投射为一份设计,并完全在后台运行与 API 设计器所应用的相同的校验。它绝不会阻塞导入,也绝不会干扰您正在进行的操作。

如果它没有发现任何问题,您将看不到任何内容。如果它发现了结构性问题,它会在两个地方向您指出。

承载被标记 API 的环境文件夹会在其行的右侧显示一个小小的**“!”**。这是一目了然的信号,表明该 API 的设计有值得一看之处——一旦该 API 重新恢复正常(在重新导入或修复该问题的 API 更新之后),它便会自行消失。

打开环境文件夹,它会多出一个问题选项卡。该选项卡仅在检测到问题时才会出现——正常的 API 从不显示它。

导入 API 的环境文件夹的“问题”选项卡:一个警告提示框,然后是按类型分组的问题——“多个路由响应相同的方法和路径”、“某些路由未声明任何响应”、“某些路由位于设计服务器保留的路径上”——每一项都列出它所影响的确切路由,其中一项已展开以显示该路由的文档

问题按类型分组,因此二十个重复路由会显示为带有计数的一行,而不是二十个单独的条目。在每种类型下,Restorm 会列出所涉及的确切实体——一个路由会显示其 HTTP 动词和真实路径,并展开为该路由的文档,让您无需离开选项卡即可查看它所声明的内容。

这些检查与 API 设计器的检查如出一辙,因此您可能看到的问题类型包括:

  • 重复路由——两个响应相同方法和路径的路由;
  • 缺失响应——一个完全未声明任何响应的路由;
  • 保留路径——一个位于 Mock Server 所保留路径上的路由(/swagger.json、/graphql 等),它永远不会响应;
  • 约束问题——无效的模式,或最小值大于其最大值。

该列表为只读:它告诉您需要修复什么,而您在源头进行修复(重新导入更正后的规范,或编辑该 API)。它会在更改 API 的事件上重新计算——打开文件、导入、更新 API——而不是在每次按键时。