我如何找到我的网站的所有API?
首席开发人员上周突然离开了我的公司。这些API没有文档记录。所以我正在努力发现每一个API是什么,然后在JIRA中记录它们。我们使用Golang作为后端。我尝试使用Charles Proxy、Fiddler、JMeter和Chromes inspector/network,但API没有显示出来。我有技术上的限制,我希望尽快找到我们所有的API。我的一个开发者告诉我下载并安装Goland。并指示我执行以下操作 “byte.*(正常|状态正常|成功) 和我如何找到我的网站的所有API?,api,go,endpoint,Api,Go,Endpoint,首席开发人员上周突然离开了我的公司。这些API没有文档记录。所以我正在努力发现每一个API是什么,然后在JIRA中记录它们。我们使用Golang作为后端。我尝试使用Charles Proxy、Fiddler、JMeter和Chromes inspector/network,但API没有显示出来。我有技术上的限制,我希望尽快找到我们所有的API。我的一个开发者告诉我下载并安装Goland。并指示我执行以下操作 “byte.*(正常|状态正常|成功) 和mux.和nomapi.来获取端点和使用它的人
mux.
和nomapi.
来获取端点和使用它的人,但不确定他们是否都使用mux和nomapi
使用goland,您可以轻松跳转到定义,这对于不熟悉的代码非常有用
并找到用法“
我不知道他说的是什么意思
有人能给我指出正确的方向吗?这实际上取决于开发人员用来创建API的内容。你最好的选择是解析源代码,而不是像Chrome inspector这样的工具。您想要找到的是API处理程序的路由器。路由器基本上是一种将API端点(如
/API/v1/login/
)映射到处理调用的Go函数(适当地称为处理程序)的结构。但是,不幸的是,根据所使用的框架/库以及代码的结构,这可能在很多不同的地方。因此,虽然我不能给你一个明确的答案,但我可以给你一些建议
http://api.domain.com/api/v1/accounts/
,在代码中搜索/accounts/
和/api/v1/
,如果这不适用于/api/
。如果运气好的话,第二次或第三次搜索可能会让您找到应用程序的根路由器,您将能够从那里跟踪它main
,特别是如果它被称为routes
之类的名称,请查找导入此包的任何位置(只需在所有文件中grep显示包名,并忽略包声明本身)github.com/gorilla/mux
,请检查代码中是否有任何引用。如果已使用,请查找其中包含HandleFunc
的任何代码。这些将是路由器。如果根本没有使用路由器库,情况也是如此祝你好运。我愿意使用Python搜索我的API,如果这也是一个解决方案的话。那么这个问题真的太广泛了。看看报纸的主题是什么。是的,很抱歉让你失望,彼得,但这就是我的全部。不顾一切地寻找解决办法。我想我会把这个留在这里几个小时,直到有人知道在这种情况下该怎么办。我有一张赞成票,所以这显然在一些人的脑海中。这太棒了。非常感谢。