2016-10-24 8 views
0

私は現在、ポート5555のサーバでExpressJSを実行しているSocket.io npmモジュールを使用しています。クライアント側では、io.connectを自分のlocalhost:5555に使用しています。 AngularJSコントローラ内のサーバ。私のクライアント側はXMLHttpRequestを継続的に返します。私のサーバー側では、私はXMLHttpRequestはExpressJSのSocket.ioでロードできません

app.use(CORS())

app.use(CORS( "http://localhost:6666"))

しかし、まだ運を使用していました。

クライアント側のローカルホストで実行されている:ローカルホストで実行されている6666

var socket = io.connect("http://localhost:5555"); 

サーバーサイド:5555

var app = express(); 
var server = require('http').Server(app); 
var io = require('socket.io')(server); 
var port = process.env.PORT; 
io.set('transports', ['websocket', 'xhr-polling', 'jsonp-polling', 'htmlfile', 'flashsocket']); 
io.set('origins', '*:*'); 

エラーメッセージ:

のXMLHttpRequestが LOCをロードすることはできませんalhost:5555/socket.io /?EIO = 3 & transport =ポーリング& t = LVsapo4。 資格フラグは 'true'ですが、 'Access-Control-Allow-Credentials' ヘッダーは ''です。資格情報を許可するには、 'true'にする必要があります。 Origin 'localhost:6666'はアクセスできません。

+0

2回目の初期化なしで試しましたか? – bflemi3

+0

@ bflemi3 yeaまだ動作していません – Foonation

答えて

0

は、あなたの特急サーバーコードの代わりに現在使用しているコードの

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

でこれを試すことができます。

+0

すべてのcorsとioのセットを削除してコードを追加しました。エラーは同じで、動作していません。 – Foonation

関連する問題