我对位于本地 LAN 上的 Web/应用服务器具有 root 访问权限。我可以通过登录服务器查看一些 API 端点,并通过 curl 访问它们。我想知道所有可用的端点。可以列举吗?
说得更清楚一点。该服务器运行一个 Web 应用程序,当我单击 UI 中的按钮进行某些更改时,我可以在应用程序的日志中看到请求,告诉我我点击的 API 端点。然后,我可以使用该信息编写 curl 命令并执行相同的操作,而无需使用 UI。
我想找到所有可用的端点,并且考虑到这是我网络上具有根访问权限的应用程序,我认为这是可能的。
服务器运行 apache,API 请求发往 HTTP://serverIP/api/api.php;示例端点如下:/v2/action/class/thing
答案1
除非应用程序明确实现,否则此信息不可用。
如果您有权访问源代码,您可能能够根据某些模式有效地搜索它,或者使用框架的内置路由列表功能。具体情况取决于所使用的框架和/或语言。
一些为公众设计的 API(即不是专为某个应用程序设计的)可以提供 Schema.org 或 Swagger/OpenAPI 格式的标准化文档。