Swagger UI显示API不支持的HTTP HEAD方法

时间:2017-07-21 09:14:58

标签: python swagger swagger-ui aiohttp

我使用python的aiohttp模块开发了一个API网关。

现在,我正在尝试为同一台服务器开发一个招摇的UI。 现在,我正在通过在函数中指定表彰来做到这一点。 以下是一个示例 -

async def list_models(request):
    """
    List models API.
    ---
    tags:
    - models
    summary: List models
    description: This API lists models created till date.
    produces:
    - application/json
    responses:
    "200":
      description: List of all the models created.
    """
    url = MODELPERSISTENCE_SERVICE_URL + '/models/'
    return await execute_get_request(url)

然而,当我部署服务器并访问swagger UI时,我发现此API也支持HTTP HEAD方法,这是错误的。

正如您所看到的,我没有在规范中的任何地方提及HEAD或GET方法。如何防止HEAD方法在swagger UI中弹出?

这是显示正在播放的HEAD方法的图片 - get and head method in place of just head method

1 个答案:

答案 0 :(得分:0)

您是否使用add_get添加路线?然后Swagger没错。

使用router' add_get方法时

aiohttp creates HTTP HEAD handlers by default。如果您不想要它们,请使用allow_head=False named parameter注册路线。