【发布时间】:2021-02-19 08:50:11
【问题描述】:
我想知道如何在下面的 get 调用中传递标头
headers = {
'User-Agent': 'Mozilla'
}
async def fetch(url, session):
async with session.get(url) as response:
resp = await response.read()
return resp
我尝试了以下但没有得到任何响应。
headers = {
'User-Agent': 'Mozilla'
}
async def fetch(url, session):
async with session.get(url, headers=headers) as response:
resp = await response.read()
return resp
目标是在异步模式下调用不同的 url。需要知道是否还有其他替代方式,但无论如何,都需要传递标头以获得正确的响应。
【问题讨论】:
-
您有理由相信标头没有正确发送吗?如果是这样,您是如何得出结论的?
-
@user4815162342 我尝试在相同的代码中使用正常的“requests.get(url, headers=headers)”,但当涉及到这行代码时却没有。跨度>
-
requests和aiohttp之间可能存在与User-Agent无关的其他内容。在假设headers=headers不起作用之前,您应该检查是否正在发送User-Agent。例如,您可以向仅记录收到的标头等的服务器发出请求。
标签: python-asyncio aiohttp requests-futures