試圖在我的控制臺上顯示資料流,但可能不知道正確的工具。如果我嘗試從 curl 獲取資料,它作業正常,看起來像這樣:
C:\Users\user>curl localhost:8080/slow/5
5
4
3
2
1
0
C:\Users\user>
首先我嘗試使用標準的http get請求,
constructor(
private http: HttpClient,
private ngzone: NgZone
) {
this.http.get('/slow/5').subscribe(x => console.log(x))
}
這是我在 5 秒后得到的錯誤:
error: Object { error: SyntaxError, text: "5\n4\n3\n2\n1\n0\n" }
嘗試使用 EventSource 方法,但這甚至無法連接它。代理作業正常。有任何想法嗎?首先十分感謝。
uj5u.com熱心網友回復:
Angular 的 HTTP 客戶端目前不支持流式傳輸。對此有一個功能請求,但被拒絕了。Angular 的 HTTP 客戶端在XMLHttpRequest內部使用,它也不支持流式傳輸。
如果您仍想流式傳輸回應資料,則必須使用fetch支持流式傳輸的原生 API。見MDN。
uj5u.com熱心網友回復:
請檢查這個Stackblitz示例,其中使用of來自 RxJs 的運算子設定了一個虛擬資料流。
您可以在 中查看該資料流是如何訂閱的app.component.ts,以便在控制臺中列印出它的值。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/529102.html
標籤:有角度的httprxjs
下一篇:附加html的角度呼叫函式
