web-dev-qa-db-ja.com

aiohttp:requests.getからaiohttpサーバーのデータ(本体)を取得する方法

次のことについてアドバイスをいただけますか?

localhost:8900実行中のaiohttpサーバーがあります

Pythonから(python2モジュールリクエストを使用して)のようなリクエストを行うと

requests.get("http://127.0.01:8900/api/bgp/show-route",
             data={'topo':"switzerland",
                   'pop':"zrh",
                   'prefix':"1.1.1.1/32"})

そして、aiohttpサーバーで定義されたルートがあります

app.router.add_route("GET", "/api/bgp/show-route", api_bgp_show_route)

のように扱われています

def api_bgp_show_route(request):
    pass

問題は、リクエストのデータ部分をサーバー側で取得するにはどうすればよいですか?意味{'topo':"switzerland", 'pop':"zrh", 'prefix':"1.1.1.1/32"}

9
nskalis

ああ、dataの部分はそのようにアクセスされます

await request.json()

あなたは公式でこれを見つけることができます aiohttp docs

14
onedreamcloser

POSTリクエストボディデータを使用してアクセスできます

if request.body_exists:
        print(await request.read())
1
ahmed MENAEM