4
我沒有在documentation中找到如何擴展HttpClient或如何爲我的一些HTTP請求指定不同的攔截器。在文檔中,他們解釋瞭如何在HTTP_INTERCEPTORS
中設置攔截器,但是每個HTTP請求都被攔截。Angular 4.3&5:如何擴展HttpClient?
我需要定製HttpClient實現來設置特定的頭,端點或響應攔截器(我不想使用Restangular,我寧願使用內置的角度HttpClient實現)。
- 我有一個oAuth API與特定的端點和特定的標頭來設置我的API密鑰。
- 我也有我的「資源」API需要特定的標頭(
Authorization: Bearer
...和API-KEY)和特定的響應攔截器來捕獲所有HTTP 401響應。 - 也許,我需要調用一些的外部API沒有任何攔截
我知道這是可能的,但Restangular我更喜歡使用HttpClient
。這怎麼可能 ?
我發現this article但是,這是爲Http
而不是爲新的HttpClient
執行角度4.3。
謝謝你的評論。我認爲這種方法不尊重關注的分離(除了第一個?!)。但是如果我使用攔截器來設置API端點,我將無法檢查URL?! – eroak
我並不是建議在攔截器中設置端點,只需設置特定端點所需的任何標題即可。我認爲你的服務應該負責瞭解端點url。 – GreyBeardedGeek
我的每個自定義'HttpClient'實現都有自己的常量URL端點,我不想使用'getURLEndpoint()'類似的方法。 – eroak