我希望能够为一个用Python编写的RESTful Web服务API生成文档。理想情况下,它应该看起来像Yahoo的RESTful Web服务文档。有没有人有任何想法或参考资料?
我希望能够为一个用Python编写的RESTful Web服务API生成文档。理想情况下,它应该看起来像Yahoo的RESTful Web服务文档。有没有人有任何想法或参考资料?
The Sphinx项目(www.sphinx-doc.org)是Python文档编写的最新技术。它非常强大和灵活,但也有点令人困惑。不过,我认为这是你最好的选择。
他们网站上有很好的文档,介绍如何设置文档源文件以及将它们构建成完成的文档,例如HTML。你应该感兴趣的部分是它的文档字符串系统,可以将Python源代码中的文档字符串整合进来,我假设你已经在使用这种方法为处理REST请求的方法编写文档字符串。请注意,这并不会自动解释正在发生的事情,但会带来所有命名元素及其参数(如果适用),并为你提供适当文档的良好框架。
假设你的所有REST功能都在一个名为restapi.py
的模块中,并且它只是位于你的项目的src
目录中,那么你需要做两件事才能让Sphinx自动生成文档:
首先,在conf.py
中包含autodoc扩展程序并将src
目录添加到Sphinx的路径中:
import sys, os
sys.path.append(os.path.abspath('sphinxext'))
extensions = ['sphinx.ext.autodoc']
sys.path.append(os.path.abspath('src'))
.. automodule:: restapi
:members:
很遗憾,我不知道有什么具体的东西可以帮助你在Python方面 -- 然而,作为参考点,你可以看一下JAX-RS Java规范使用的WADL规范 -- https://wadl.dev.java.net/ -- 此外,还有一个xslt可以将wadl转换成html -- http://www.mnot.net/webdesc/
他们使用雅虎REST API作为示例。