<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ## 服務器端事件發送 服務器端事件發送(`SSE`)是一個服務器推送技術,用來使客戶端在`HTTP`連接下自動接收服務器更新消息。每個消息以一個由一對新行符號作為結束的文字塊發送(參見[這里](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events))。 ### 使用 要在路徑中使能服務器端事件發送(路徑在控制器類中注冊),用`@Sse()`裝飾器注釋該方法處理程序。 ```TypeScript @Sse('sse') sse(): Observable<MessageEvent> { return interval(1000).pipe(map((_) => ({ data: { hello: 'world' } }))); } ``` ?> `@Sse()`裝飾器從`@nestjs/common`中導入,`Observable, interval, 和 map`從`rxjs`中導入。 !> 服務器端事件發送路徑必須返回`Observable`流。 在上述示例中,我們定義了一個命名的`sse`來生成實時更新,這些事件可以通過 [EventSource API](https://developer.mozilla.org/en-US/docs/Web/API/EventSource) 監聽。 `sse`方法返回一個`Observable`并發送多個`MessageEvent`(在本例中,它每秒發射一個新的`MessageEvent`)。`MessageEvent`應該與下列接口相匹配。 ```TypeScript export interface MessageEvent { data: string | object; id?: string; type?: string; retry?: number; } ``` 這樣,我們可以在客戶端創建一個`EventSource`類的實例應用。并將`/sse`路徑(這和我們傳遞給`@Sse()`裝飾其中的路徑字符串一致)作為其構造函數參數。 `EventSource`實例打開一個和 HTTP 服務器的持久性連接,它以`text/event-stream`格式發送事件。連接在調用`EventSource.close()`方法前始終保持。 一旦連接打開,從服務器傳來的消息將以事件格式傳遞給你的代碼。如果在傳入消息中有事件字段,和事件字段相同的字段將會被觸發。如果當前沒有該事件字段,則觸發一個一般的`message`事件(參見[這里](https://developer.mozilla.org/en-US/docs/Web/API/EventSource))。 ```TypeScript const eventSource = new EventSource('/sse'); eventSource.onmessage = ({ data }) => { console.log('New message', JSON.parse(data)); }; ``` [這里](https://github.com/nestjs/nest/tree/master/sample/28-sse)有一個可用的例子。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看