HTTP 日期与 Retry-After 解析。移植自 Keelson jvm/modules/clj-net/src/im/ttalk/net/retry.clj(5c745869)的
parse-http-date / retry-after-ms,改动:不判上限(clj-net 是「≥ 上限且 ≥ 退避就忽略」;clj-agent 的口径是
「取 min(值, :max-delay)」,由调用方做,见 designs/http-module.md §1.3);时钟改为毫秒数参数。
HTTP 日期与 Retry-After 解析。移植自 Keelson `jvm/modules/clj-net/src/im/ttalk/net/retry.clj`(5c745869)的 `parse-http-date` / `retry-after-ms`,改动:**不判上限**(clj-net 是「≥ 上限且 ≥ 退避就忽略」;clj-agent 的口径是 「取 min(值, :max-delay)」,由调用方做,见 designs/http-module.md §1.3);时钟改为毫秒数参数。
(parse-http-date s)HTTP 日期(IMF-fixdate / RFC 850 / asctime 三种)⇒ Instant;解析不出 ⇒ nil。
HTTP 日期(IMF-fixdate / RFC 850 / asctime 三种)⇒ Instant;解析不出 ⇒ nil。
(retry-after-ms headers)(retry-after-ms headers now-ms)服务端要求的等待(毫秒);没有 / 认不得 ⇒ nil。先看 retry-after-ms 头(毫秒,OpenAI 用),再看 Retry-After
(delta-seconds,可带小数;或 HTTP 日期 ⇒ 距 now-ms 多久,已过 ⇒ 0)。负数、非有限数不认。
headers:头 map(头名大小写不敏感,值可为串 / 串向量 / List)或带 :headers 的响应。不判上限。
服务端要求的等待(毫秒);没有 / 认不得 ⇒ nil。先看 `retry-after-ms` 头(毫秒,OpenAI 用),再看 `Retry-After` (delta-seconds,可带小数;或 HTTP 日期 ⇒ 距 `now-ms` 多久,已过 ⇒ 0)。负数、非有限数不认。 `headers`:头 map(头名大小写不敏感,值可为串 / 串向量 / List)或带 :headers 的响应。**不判上限。**
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |