2017-03-02 111 views
0

我想通過CORS與Angular2和NodeJs進行跨域請求(GET,POST,DELETE ...)。當我嘗試使用Chrome瀏覽器時,我在Win7上的IE11上獲得了成功,但我在下面看到了錯誤。主域域我設置標題「Access-Control-Allow-Origin」,以便在Chrome上成功運行。使用Angular2和NodeJs(CORS)跨域請求

-I have tride xdomain library但我無法成功使用Angular2。我可能會錯過一些東西,但我不知道是什麼。互聯網上沒有例子。

我能做些什麼在IE上工作?除CORS以外,我可以使用任何其他方式。

任何幫助?

感謝

SEC7118: XMLHttpRequest for http://master.domain:1300/login required Cross Origin Resource Sharing (CORS). 

SEC7119: XMLHttpRequest for http://master.domain:1300/login required CORS preflight. 

SCRIPT7002: XMLHttpRequest: Network Error 0x80070005, Access is denied. 
+0

通常情況下,因爲IE10,CORS的原生支持。而對於IE8&9,你需要使用XDomainRequest功能。主請求中CORS配置的配置是什麼? –

+0

我設置瞭如下標題: res.setHeader('X-Frame-Options','deny'); ('Access-Control-Allow-Headers','Origin,X-Requested-With,Content-Type,Accept'); ('Access-Control-Allow-Methods','POST,GET,PATCH,OPTIONS'); res.setHeader('Access-Control-Allow-Credentials',true); –

+0

你設置了什麼樣的Content-Type標題? –

回答

1

只設置「訪問控制允許來源」頭可能不夠,依賴於要求你正在做的類型。你還應該設置「訪問控制允許的方法」和「訪問控制 - 允許 - 頭」

舉個例子:

Access-Control-Allow-Origin: * 
Access-Control-Allow-Methods: POST, GET, PUT, OPTIONS 
Access-Control-Allow-Headers: Content-Type 
+0

我設置了像你所提到的所有標題。 –