Haskell 在服务中生成端点描述
Servant根据API定义生成文档。但是,我看不到(非正式地)记录每个端点功能的方法。对于上面链接中使用的示例,生成的文档包含:Haskell 在服务中生成端点描述,haskell,servant,Haskell,Servant,Servant根据API定义生成文档。但是,我看不到(非正式地)记录每个端点功能的方法。对于上面链接中使用的示例,生成的文档包含: ## Welcome This is our super webservice's API. Enjoy! ## GET /hello #### GET Parameters: - name - **Values**: *Alp, John Doe, ...* - **Description**: Name of the person
## Welcome
This is our super webservice's API.
Enjoy!
## GET /hello
#### GET Parameters:
- name
- **Values**: *Alp, John Doe, ...*
- **Description**: Name of the person to say hello to.
#### Response:
在上面的例子中,我遗漏了一种记录GET/hello
端点所做工作的方法,这就是,我希望有一种方法可以用每个端点的非正式描述来扩充API文档
## Welcome
This is our super webservice's API.
Enjoy!
## GET /hello
Send a hello message to the given user. /<-- My description.../
#### GET Parameters:
- name
- **Values**: *Alp, John Doe, ...*
- **Description**: Name of the person to say hello to.
#### Response:
欢迎光临
这是我们超级Web服务的API。
享受吧!
##接/你好
向给定用户发送hello消息/ 我相信您要查找的内容可以在
仆人文档
()的仆人文档
模块中找到
如果使用docsWith
函数,则可以为正在编制文档的api提供ExtraInfo
对象:
docsWith :: HasDocs api => DocOptions -> [DocIntro] -> ExtraInfo api -> Proxy api -> API
我相信,docsWith
的要点是允许您按照您的要求提供额外的端点文档。ExtraInfo
有一个Monoid
实例,因此看起来您可以为api中的每个端点构建单独的ExtraInfo
对象,然后将它们一起mappend
传递给docsWith
要生成ExtraInfo
,请使用ExtraInfo
功能:
extraInfo :: (IsIn endpoint api, HasLink endpoint, HasDocs endpoint) => Proxy endpoint -> Action -> ExtraInfo api
文档(链接到上面)有一个示例,说明如何使用
extraInfo
功能。我相信您要查找的内容可以在仆人文档的仆人.Docs
模块中找到
如果使用docsWith
函数,则可以为正在编制文档的api提供ExtraInfo
对象:
docsWith :: HasDocs api => DocOptions -> [DocIntro] -> ExtraInfo api -> Proxy api -> API
我相信,docsWith
的要点是允许您按照您的要求提供额外的端点文档。ExtraInfo
有一个Monoid
实例,因此看起来您可以为api中的每个端点构建单独的ExtraInfo
对象,然后将它们一起mappend
传递给docsWith
要生成ExtraInfo
,请使用ExtraInfo
功能:
extraInfo :: (IsIn endpoint api, HasLink endpoint, HasDocs endpoint) => Proxy endpoint -> Action -> ExtraInfo api
文档(链接到上面)有一个示例,说明如何使用extraInfo
功能。我简要介绍了该文档机制。它对我来说没有足够的用处来证明任何实时投资的合理性,所以我只托管一个静态页面,手工制作并手动更新API。在我的例子中,API几乎从不改变(可能一年内改变一次)是有帮助的。它对我来说没有足够的用处来证明任何实时投资的合理性,所以我只托管一个静态页面,手工制作并手动更新API。在我的例子中,API几乎从未改变(可能一年内改变一次)是有帮助的。感谢你的提示,我能够添加自定义的注释。它与我想要的不同之处在于添加一个注释会添加一个新的部分,但总比什么都没有好。现在,我将尝试在生成的Swagger文档上进行此操作,但这是另一个故事。感谢您的提示,我能够添加自定义的注释。它与我想要的不同之处在于添加一个注释会添加一个新的部分,但总比什么都没有好。现在,我将尝试在生成的招摇过市文档上进行这项工作,但这是另一个故事。