网络接口 Node 适配
路一 Node 宿主的[网络接口](../../../豫言操作系统接口/网络/规范.汉语.md)适配,宿主用 Node 自带的 fetch 发送出站 HTTP 请求。
- 授权:目标来源(协议、主机、端口)须在启动时的
--允许源里,例如--允许源 https://example.com;不在其中返回未获授权,不发请求。 - 核对:方法限
GET、HEAD、POST、PUT、PATCH、DELETE、OPTIONS;网址须为绝对http:或https:;标头不合(名称或值非法)、GET与HEAD带正文都返回输入无效。 - 重定向:以
redirect: 'manual'发送,收到 301、302、303、307、308 即返回宿主操作失败,不向下一跳发请求;304 与其他状态(含 4xx、5xx)是成功取得的响应。 - 限额:
读取请求正文上限与读取响应正文上限都是 16 MiB(宿主值桥单次交换上限);请求正文超过、或响应正文累计超过时返回资源配额已尽,响应超限时立即取消读取。传输失败返回宿主操作失败。 - 响应在豫言里完整保存状态、标头与正文;标头名称为小写,
读取网页响应标头按 ASCII 不区分大小写查找,重复标头按 Fetch 规范合并为一个值(set-cookie各自保留)。
新增宿主原语(外调名):豫言_节点_网络发送(可挂起,返回(状态码,HTTP 状态,标头 JSON,正文,消息))与 豫言_节点_网络正文上限,实现在 豫言操作系统/宿主/节点/应用宿主.mjs;状态码编号同文件适配。本适配依赖基础接口的 错误 模块。待办事项:请求超时与取消。