npm包circuit-breaker-9是用于前端的一种网络断路器插件。它是一个对于前端Web应用程序网络中经常出现的异常情况的重要解决方案。例如:网络状况不佳,HTTP请求响应时间超时以及HTTP请求失败等。
这个npm包通过量化一个外部依赖的健康程度来实现所谓的断路器模式。更有趣的是,该npm包支持通过一行代码实现断路器的开启和关闭。因此,该npm包被广泛应用于前端Web应用程序网络中的高质量逻辑应用程序。
安装npm包circuit-breaker-9
您可以使用npm进行circuit-breaker-9包的安装。
--- ------- -----------------
使用npm包circuit-breaker-9
为了使用circuit-breaker-9,您需要引入包并创建一个新断路器。
------ -------------- ---- -------------------- ----- ----------------- - ---------------------------- ----- -------------- - --- ---------------- ---- ------------------ ---
一旦你创建了circuit-breaker实例,你可以开始使用它。下面展示了两个示例。
--- - ----- -------- - ----- ----------------------------------- ---------------------- - ----- ------- - --------------------- -
----- -------- - ----- ---------------------------------- ---------------- -- ---------------------- -------------- -- ----------------------
API文档
circuit-breaker-9提供了一系列的API,以满足您的定制化需求。
CircuitBreaker
该类提供了在断路器实例中触发的相关参数。图示如下:
----- -------------- - --- ---------------- ---- ---------------------------- ---------- --- -------- ----- ---------- ------ ----- -------- -------- - -------------- ------- ------------ -- ------------- - ----- ---------- -- --------------------------- -- -- ---------------------- ------- -------- ---------------------------- -- -- -------------------- ------- ---------- ------------------- ------- -- --------------------- ---
url
Type: String
URL是断路器实例与外部库所提供服务的URL。步骤必须包括Protocol(例如https://)。
threshold
Type: Number
Default: 10
阈值是断路器实例打开的请求阀值。
timeout
Type: Number
Default: 1000
超时是断路器实例等待请求的最长时间。
frequency
Type: Number
Default: 10000
(10 seconds)
频率是断路器实例尝试重试失败请求的频率。
type
Type: String
Default: 'FETCH'
type是请求类型。可以是FETCH、XHR或JSONP。
headers
Type: Object
headers是传递给请求的HTTP Header。
fetchOptions
Type: Object
fetchOptions是提供给fetch方法的请求选项。
circuitBreakerOpenCallback
Type: Function
circuitBreakerOpenCallback是当断路器实例打开时要调用的回调函数。
--------------------------- -- -- ---------------------- ------- --------
circuitBreakerCloseCallback
Type: Function
circuitBreakerCloseCallback是当断路器实例关闭时要调用的回调函数。
---------------------------- -- -- -------------------- ------- ----------
customErrorHandler
Type: Function
customErrorHandler是从错误处理程序中定制错误消息的回调函数。
------------------- ------- -- ---------------------
CircuitBreaker#fetch
fetch是发送一个GET或POST请求的方法。
----- ---- - ----- -----------------------------------
fetch方法使用fetchAPI并在断路器实例中实现断路器模式。
CircuitBreaker#close
close方法关闭断路器,以便请求可以被再次发送。
-----------------------
CircuitBreaker#open
open方法打开断路器以防止请求被发送。
----------------------
CircuitBreaker#reset
reset方法重置断路器计数器和时间信息。
-----------------------
总结
circuit-breaker-9是一种很方便的断路器插件,它可以帮助我们更好地控制Web应用程序中的故障情况。通过使用circuit-breaker-9,我们可以轻松处理网络状况不佳、HTTP请求响应时间超时以及HTTP请求失败等情况。希望本教程能对您有所帮助。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60067356890c4f7277583c3a