【问题标题】:What is cold observable in context of angular HttpClient在 Angular HttpClient 的上下文中什么是冷可观察的
【发布时间】:2023-03-06 05:58:02
【问题描述】:

在使用 angular HttpClient 的角度时,我知道 HttpClient post 方法使用冷可观察,并将进行 2 次单独调用以将数据发布到服务器。除非您不订阅 post 方法,否则它不会发布数据到服务器。

虽然,Rxjscold observable 表示它将保留所有序列直到结束,并在订阅时触发所有序列。

它将如何对服务器进行 2 次单独调用以发布数据。

【问题讨论】:

    标签: rxjs angular-httpclient


    【解决方案1】:

    COLD 是你的 observable 创建生产者的时候

    // COLD
    var cold = new Observable((observer) => {
      var producer = new Producer();
      // have observer listen to producer here
    });
    

    HOT 是当你的 observable 关闭生产者时

    // HOT
    var producer = new Producer();
    var hot = new Observable((observer) => {
      // have observer listen to producer here
    });
    

    来源:https://medium.com/@benlesh/hot-vs-cold-observables-f8094ed53339

    【讨论】:

      【解决方案2】:

      我不认为这种行为是由使用 observables 引起的。

      我怀疑浏览器正在发出飞行前 OPTIONS 请求作为与服务器的“握手”,以确定是否理解 CORS 协议。这在 POST 请求之前,这可能是您收到 2 次服务器调用以发布数据的原因。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-12-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-07-25
        • 1970-01-01
        相关资源
        最近更新 更多