2017-04-20 64 views
1

我有一個應用程序需要查詢阻止跨源請求的API。現在,我的方法是查詢我的自己的 API,然後查詢第三方API,然後將結果中繼到前端。所以基本上我有設置代理端點。查詢阻塞CORS的API

這會導致我想要避免的服務器上的額外負載。有沒有一種方法可以直接從我的前端代碼執行此操作,並且在後端沒有代理端點?

例如,說下面的端點: https://fantasy.premierleague.com/drf/bootstrap-dynamic 如果你直接用它打開瀏覽器,它運行良好。但是當我使用Angular 2 http來獲取響應時,它會被阻止。

+0

我想你應該允許CORS服務器上的API託管。 –

+0

我無法控制該API。 –

+1

擁有一個代理並不是一件壞事。查看他們的[GitHub頁面](https://github.com/Netflix/zuul)頁面上的Netflix Zuul資源和故事參考,瞭解爲什麼有用。 – andreim

回答

3

有沒有一種方法可以直接從我的前端代碼執行此操作,並且在後端沒有代理端點?

不。這是CORS被禁用的一點。如果您無法控制服務器禁用CORS或將其設置爲運行應用程序的原始服務器,則必須使用代理服務器,方法是在爲vi節點提供服務時設置代理服務器,或者相應地配置apache/nginx服務器。