当前位置: 首页 > 工具软件 > Brython > 使用案例 >

brython 文档之 browser.aio 模块

秦博达
2023-12-01

module browser.aio

该模块支持 Brython 中的异步编程,使用关键字 async和await.
它替换了CPython 标准库中的asyncio模块,该模块不能在浏览器上下文中工作:
它使用诸如run()or之类的阻塞函数run_until_complete(),并且浏览器的工作方式使得无法定义在事件发生之前暂停执行的函数。
浏览器有自己的隐式事件循环,不可能像asyncio模块对 function 所做的 那样定义另一个事件循环set_event_loop()。
模块browser.aio定义了以下异步函数:
Ajax requests

ajax(method, url[, format="text", headers=None, data=None, cache=False])
req = await ajax("GET", url)异步函数内部将控制权交还给主程序,并在对指定 URL 的类型方法(“GET”、“POST”、“PUT”等)的 Ajax 请求完成时恢复该函数。返回值是类的一个实例Request(见下文)。
format是预期的响应格式。它可以是以下之一:
"text" : 响应是一个字符串
“二进制”:类的一个实例bytes
"dataURL" : 格式化为 dataURL的字符串
headers是一个字典,其中包含与请求一起发送的 HTTP 标头。
data是一个字符串或字典,将与请求一起发送以形成“GET”请求的查询字符串,或“POST”的请求正文。
cache是一个布尔值,指示是否应使用浏览器缓存
<
 类似资料: