3

如果我有一个用 Symfony [symfony-project.org] 框架(即 PHP)编写的基于 REST 的服务,是否有任何像样的工具/框架可以解析我的代码并生成 API 文档?

基于 Java 的框架 enunciate 具有类似于我需要的文档功能,您可以在此处查看此示例:http: //enunciate.codehaus.org/wannabecool/step1/index.html

我了解基于 REST 的服务的前提应该是不言而喻的,但是我正在寻找可以为我生成此文档的东西,而无需手动编写所有端点、支持的格式、示例输出等。

谢谢

4

2 回答 2

6

不确定你以前是否见过Swagger。他们似乎有一个PHP 兼容版本,虽然我不能亲自担保。它会自动生成一些类似于 enunciate 的 API 文档,尽管它看起来确实需要通过 PHP 注释进行一些繁重的手动文档。话虽如此,我认为手动工作将与通过 wiki 页面制作自己的工作相同或更少,并且输出要好得多。

就像事实一样,Enunciate 似乎有无限计划最终支持其他平台,但相关的 Jira 门票目前正在公开等待赞助商承担这项工作。

来自ENUNCIATE-356 Jira 票

支持其他语言的第一步是将 Enunciate 模型与 Java 模型分离。这项工作正在ENUNCIATE-584进行跟踪和记录。不幸的是,由于它的重量,它从未脱离调查阶段。除非找到这项工作的赞助商,否则我预计不会很快承担如此重的负担。


编辑:
发现了一个类似的问题,其中有人提到了一个专门用于 Swagger+Symfony2 的 GitHub 项目这另一个问题是相同的,但没有额外的信息。

于 2012-09-26T20:11:28.597 回答
0

据我所知,没有办法自动化媒体类型的文档。

如果您使用 XHTML 之类的媒体类型,那么Google 站点地图之类的网络爬虫 可能会产生一些有用的输出来显示您的资源之间的关系。

于 2010-05-03T12:32:21.297 回答