簡體   English   中英

REST API可以作為CORS問題的代理嗎?

[英]Can a REST API works as a PROXY for CORS issues?

我的問題如下:

我正在使用Angular開發Web應用程序。 Angular應用程序在客戶端的瀏覽器上運行。 按照其邏輯,我的應用程序需要來自other-domain.com的數據。 由於CORS政策問題,我無法直接使用XMLHttpRequest()。 (產生數據的Web服務器other-domain.com不是我的域,因此無法添加“ Control-Access-Allow-Origins”)

因此,與其擁有:

角度=== >> other-domain.com(由於CORS而被禁止)

我正在創建一個REST API,它將從other-domain.com獲取數據,並在將其發送到客戶端的Angular之前,使用標頭'Access-Control-Allow-Origin':'*'封裝此數據。

所以我的工作流程變成:

角度== >>我的API服務器== >> other-domain.com(允許,因為對其他域的請求未在瀏覽器上執行)

您是否認為我的想法對每個請求(GET,POST,添加cookie標頭)都適用? 在那種情況下,我正在開發的API充當代理,對嗎?

謝謝

簡短的回答:是的。 實際上,那里有軟件包站點可以為您完成此任務。

但是我認為另一個問題是為什么您需要規避CORS限制。 畢竟,它按預期工作,並且首先存在它是有原因的。

如果已經有一個后端,是否可以添加一個端點,您的后端將在該端點上調用另一個域,並使瀏覽器僅在您的域內進行通信?

如果您僅執行RESTful GET,而一個不透明的請求(沒有憑據,沒有cookie等)將滿足您的需求,則也可以僅將fetch api與{mode: 'no-cors'} 但是,您需要“規避” HttpClient來這樣做,並且如果需要支持IE,則需要使用polyfill。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM