2015-05-06 63 views
0

我遇到了IE和CORS的問題。在IE上使用socket.io客戶端發生CORS錯誤

在我的頁面 「mysite.com」,我做的:

客戶端:

<script src="http:// assets.mysite.com/bundle.js"> //without the space 

在資產服務器,我有:

app.use(function (req, res, next) { 
    res.header("Access-Control-Allow-Origin", "*"); 
    res.header("Access-Control-Allow-Headers", "X-Requested-With"); 
    next(); 
}); 

的bundle.js是一個連接到套接字服務器的瀏覽器模塊:

var socket = require('socket.io-client')("http: //mysocketserver.com:5000/api"); 

Chrome和Firefox沒有問題,一切都完美加載,建立連接等。在IE(令人驚訝的是)事情並不那麼好。

SEC7118: XMLHttpRequest for http://mysocketserver:5000/socket.io/?EIO=3&transport=polling&t=1430944033665-4&sid=jvRj85_i_1ZgwTumAABK required Cross Origin Resource Sharing (CORS). 

我檢查了一切。 IE瀏覽器使用相同的運輸爲Chrome和FF,插座要求對所有的瀏覽器下面的標題:

Access-Control-Allow-Credentials true 
Access-Control-Allow-Origin http:// mysite.com 

但是IE仍然拒絕連接,並且,我想不通爲什麼。

回答

-1

因爲它是IE;)特別是IE 8/9在跨域時會出現這樣的問題。嘗試使用XDomain,它爲我工作並解決了這些問題。

+0

它實際上是IE11,並且在我的gf的PC上運行,它位於我的旁邊。去圖...無論如何,IE瀏覽器的成功率已經很高了。 – xShirase

相關問題