Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Haskell 在服务中生成端点描述_Haskell_Servant - Fatal编程技术网

Haskell 在服务中生成端点描述

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

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 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文档上进行此操作,但这是另一个故事。感谢您的提示,我能够添加自定义的
注释。它与我想要的不同之处在于添加一个注释会添加一个新的部分,但总比什么都没有好。现在,我将尝试在生成的招摇过市文档上进行这项工作,但这是另一个故事。