Probleme mit socket.io auf IE8 und 9
Socket.io funktioniert perfekt auf jeder Plattform mit Ausnahme von IE8 und 9, was eine Clientanforderung ist. Könnt ihr bei diesem Problem helfen?
Ich habe alle ähnlichen Probleme gelesen, aber die meisten Lösungen, die ich bis jetzt gefunden habe, können dieses Problem auf IE8 nicht lösen.
Hier ist die Struktur:
SERVER-SEITE
var ip = 'xxx.xxx.xxx.xxx';
var ipPort = '8081';
var app = require('http').createServer(handler);
var io = require('socket.io')(app);
var fs = require('fs')
app.listen(ipPort, function() {
//console.log('Listening at: http://'+ ip +':'+ ipPort +'');
});
//io.set('transports', ['websocket','flashsocket', 'htmlfile', 'xhr-polling', 'jsonp-polling']);
function handler (req, res) {
fs.readFile(__dirname + '/test.html',
function (err, data) {
if (err) {
res.writeHead(500);
return res.end('Error loading index.html');
}
res.writeHead(200);
res.end(data);
});
}
KUNDENSEITE
<html>
<body>
</body>
<script src="/socket.io/socket.io.js"></script>
<script>
alert("hi");
//var socket = io.connect('xxx.xxx.xxx.xxx:8081',{transports:'jsonp-polling');
var socket = io.connect(''xxx.xxx.xxx.xxx:8081',{secure: true});
socket.on('news', function (data) {
alert("hello data:"+data[0]);
socket.emit('my other event', { my: data });
});
socket.on('connect', function () {
alert("hello socket");
});
</script>
</html>
Ich bekomme überhaupt keine Fehler, nur keine Antwort. Ich habe einen Alert () auf socket.on ('news') gesetzt und bekomme kein Feedback, ABER DANN habe ich socket.on ('connect') hinzugefügt und die alert () drinnen und es erscheint !!
Ich hoffe, es gibt jemanden da draußen, der dieses Problem bereits durchgreift und es löst. Ich bin auf Win7 und Knoten (v0.10.30) Socket.io (v1.0.6) vielen Dank für die Hilfe.