XMLHTTPRequest超时不是第一个字节的时间吗?

时间:2017-12-01 10:36:39

标签: javascript xmlhttprequest

我想指定TTFB的超时(第一个字节的时间)。

Spec(https://xhr.spec.whatwg.org/#event-xhr-timeout)说“作者指定超时已经在fetch完成之前通过了。”,这不是我想要的。

用例;我可以从服务器发送媒体,因此响应可能需要很长时间才能恢复。

但是没有返回是一个错误条件,这意味着我想重试请求。

如何?

有关超时/暂停时间的参考:https://stackoverflow.com/a/4958782/63621 https://fetch.spec.whatwg.org/#concept-network-error

1 个答案:

答案 0 :(得分:0)

  

我想为TTFB指定一个超时(到第一个字节的时间)。

由于第一个进度事件的持续时间为50ms,因此无法完美实现。假设您不关心这种不精确性,请reset the timeout property或在进度处理程序中手动中止。

  

但是什么也没找回来是一个错误情况,这意味着我想重试该请求。

如果没有收到至少一个字节,则不会触发任何进度事件:

  

…only invoked when new bytes are transmitted.