Pythonプロジェクトでaiohttp-swaggerを使用したいのですが、GETURLとPOSTペイロード変数をどのように処理するのかわかりません。ここにクイックスタートの例に基づいたこのサンプルコードがあります。私が行った唯一の変更は、GETURLにクエリパラメーターを含めたことです。
from aiohttp import web
from aiohttp_swagger import *
async def ping(request):
"""
---
description: This end-point allow to test that service is up.
tags:
- Health check
produces:
- text/plain
responses:
"200":
description: successful operation. Return "pong" text
"405":
description: invalid HTTP Method
"""
return web.Response(text="pong %s" % request.match_info['var']) # change here (1/2)
app = web.Application()
app.router.add_route('GET', "/ping/{var}", ping) # change here (2/2)
setup_swagger(app)
web.run_app(app, host="127.0.0.1")
生成されるSwagger / OpenAPIページは変数を認識していないようです。「var」クエリ変数の値を入力できるテキストボックスが生成されることを期待していました。aio-httpでこれを行うにはどうすればよいですか?出来ますか?そうでない場合、これを処理できる別のライブラリはありますか?
記録のために、私はC#のバックグラウンドを持っており、過去にSwashbuckleライブラリを使用してこれを実行しました。
parameters
注釈にattrを追加する必要があります。
実例:
from aiohttp import web
from aiohttp_swagger import *
async def ping(request):
"""
---
description: This end-point allow to test that service is up.
tags:
- Health check
parameters:
- in: query
name: var
produces:
- text/plain
responses:
"200":
description: successful operation. Return "pong" text
"405":
description: invalid HTTP Method
"""
return web.Response(text="pong %s" % request.match_info['var']) # change here (1/2)
app = web.Application()
app.router.add_route('GET', "/ping/{var}", ping) # change here (2/2)
setup_swagger(app)
web.run_app(app, host="127.0.0.1")
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加