跳到正文
豫言包管理
← 全部包

豫言操作系统网页事件源适配 0.1.0

豫言 · 库

以浏览器 fetch 流实现网页事件源接口:自动重连、成批投递并按队列余量控速。

网页事件源浏览器适配

事件源。豫 实现[网页事件源接口](../../../豫言操作系统接口/网页事件源/规范.汉语.md)的全部函数:打开事件源、关闭事件源。实现接口。豫 固定公共包身份与版本,接口检查器须在构建前核对签名。

宿主原语:适配只调用 豫言_浏览器_网页能力(同步)与 豫言_浏览器_网页能力异步(需要等待的操作)两个原语,操作名为 事件源.打开、事件源.关闭;失败以(阴,错误文)返回,再由本适配转成豫言事故,不让 JavaScript 异常越过 Wasm 边界。

宿主实现:宿主/浏览器/宿主.mjs 的 创建网页能力。宿主用 fetch 流实现 SSE(不用原生 EventSource,因为原生对象没有背压):创建SSE解析器 按 WHATWG 规则切分事件,宿主把事件成批投递为类型“事件流”的事件;每个事件源在队列里未取走的批达到 8 个时暂停读流,应用取走后继续,所以不丢事件。断线后自动带 Last-Event-ID 重连,重连间隔可由服务器 retry: 调整;HTTP 非 200、内容类型不对或事件过大为致命错误。

运行要求:等待类函数挂起豫言栈,浏览器须支持 JSPI;八个新包与网页事件包共用同一个统一事件队列。

验收:一致性验证见 ../网页定时/一致性验证/(探针应用 前端接口探针、宿主单元测试与 JSDOM+真实 Wasm 的一致性测试,说明见其中的 说明.汉语.md)。

依赖

查看包配置

上传历史

当前上传修订:1 ·

  1. 上传修订 1
    下载 ZIP

包层级

父包:豫言操作系统适配

没有子包。