问题标签 [aiohttp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 使用 aiohttp 将数据作为文件发送
我有这样的端点,它返回一个带有 csv 的文件:
我的问题是下一个:是否可以以某种方式自动设置标题?正如文档所说,aiohttp 具有BodyPartWriter
具有set_content_disposition
方法的类。但是,据我了解,它只能与客户端 API 一起使用(或者至少,只有客户端 API 的示例)。那么,是否可以BodyPartWriter
与Response
对象一起使用?
http - aiohttp:服务单个静态文件
如何使用 aiohttp 提供单个静态文件(而不是整个目录)?
静态文件服务似乎通过UrlDispatcher.add_static()被烘焙到路由系统中,但这仅服务于整个目录。
(我知道我最终应该使用 nginx 之类的东西在生产环境中提供静态文件。)
javascript - python3.5 aiohttp,请求post,json格式和405错误
我终于注册了,因为我对自己的问题一无所知。我的后端部分使用 asyncio 和 aiohttp,前端部分使用 javascript。但我遇到了 405 错误。(我准确地说我是这些库的初学者)
我希望从发布请求中检索 json。这里的javascript函数:
和python代码:
使用此代码,我收到 405 错误。这里有一点关于请求的萤火虫说:
但是,如果我在我的 javascript 文件中取回该行contentType : 'application/json'
,它可以工作(但是请求发送了一个名为的对象MultiDictProxy
,我不明白如何使用包中的函数json()
(aiohttp.web
here )。
我真的需要一个 json 对象。有人可以帮助我吗?
python-3.x - 来自 aiohttp 的 ClientDisconnectedError
我有一个用 aiohttp 构建的 websocket 服务器。我在服务器错误流中不断收到此异常。
客户端显示一条消息:
处理程序中的代码是:
客户端代码为:
这可能是什么问题?我也尝试启用调试模式,但这似乎也没有提供任何有用的输出。
python-3.x - aiohttp 任务上传文件
目的:从模具中接收文件,文件列表,并在任务中处理它们。但是,解决这个问题,一个问题,一个文件描述符在传输到任务时是关闭的。是这么想的还是有问题?我不想通过使用异步 aiohttp 的 javascript 文件来处理双引导。
服务器端切割
html侧切
任务切割
调试消息剪切
python - 如何对 aiohttp.web 应用程序进行单元测试
给定一个具有如下视图的 aiohttp.web 应用程序:
我试图了解如何正确地对它们进行单元测试。
在编写 Django 应用程序时,我通常使用 Django 自己的测试客户端,并且正在为 aiohttp.web 寻找类似的东西。我不确定这是不是正确的方法。
TL;DR:如何在单元测试中模拟对aiohttp.web
应用程序的请求?
python - Asyncio 和 aiohttp 将所有 url 路径路由到处理程序
我很难找到匹配所有传入 url 的通配符 url 匹配模式。这只是匹配一个只有主机名的 url:
因此,无论路径如何,只要有请求,它就应该调用处理程序。如果它的http://127.0.0.1:9999/或http://127.0.0.1:9999/test/this/test/
我在这里查了http://aiohttp.readthedocs.org/en/stable/web.html#aiohttp-web-variable-handler没有找到正确的线索
python-3.x - 我可以使用 asyncio.wait_for() 作为上下文管理器吗?
为什么这不起作用:
给
据我了解,asyncio.wait_for()
将传递aiohttp.get()
具有__aenter__
and__aexit__
方法的 的未来(正如有效的事实所证明的那样async with aiohttp.get()
)。
python - 如何使用 aiohttp 处理 DNS 超时?
aiohttp自述文件说:
如果您想为 aiohttp 客户端使用超时,请使用标准 asyncio 方法:yield from asyncio.wait_for(client.get(url), 10)
但这并不能处理 DNS 超时,我猜这些超时是由操作系统处理的。with aiohttp.Timeout
也不处理操作系统 DNS 查找。
在asyncio repo上进行了讨论,但没有最终结论,Saghul 已经制作了aiodns,但我不确定如何将它混入 aiohttp 以及这是否允许asyncio.wait_for
功能。
测试用例(在我的 linux 机器上需要 20 秒):
python-3.x - 将 tornado 与 aiohttp(或其他基于 asyncio 的库)一起使用
我想将 tornado 与 aiohttp 和本机 python 3.5 协程等异步库一起使用,最新的 tornado 版本(4.3)似乎支持它。但是,在龙卷风事件循环中使用它时,请求处理程序会无限期挂起。当不使用 aiohttp 时(即没有下面的行) r = await aiohttp.get('http://google.com/')
,text = await r.text()
请求处理程序照常进行。
我的测试代码如下: