gpt4 book ai didi

node.js - 使用 socket.io 时出现 xhr 轮询错误

转载 作者:搜寻专家 更新时间:2023-10-31 22:50:17 25 4
gpt4 key购买 nike

我写了一个关于 socket.io 的非常简单的演示,我用 phonegap 打包了它。我发现有问题。在我打开我的应用程序大约十秒钟后,由于 xhr 轮询错误,连接将断开。如果我在断开连接事件中刷新页面,错误将不会再次出现。我使用 1.2.0 版本。这是我的代码。我已经简化了它。

服务器:

var express = require('express');
var app = express();
var http = require('http').Server(app);
var io = require('socket.io')(http);
var path = require('path');

var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');

app.use(bodyParser.json());
app.use(bodyParser.urlencoded());
app.use(cookieParser());


app.use(express.static(path.join(__dirname, 'public')));


io.sockets.on('connection', function (socket) {

console.log("disconnect--"+socket.id+"--"+io.sockets.server.eio.clientsCount);

socket.on('disconnect', function () {
console.log("disconnect--"+io.sockets.server.eio.clientsCount);
});

});

http.listen(80, function () {
console.log("server statrt");
});

客户:

 $(document).ready(function () {

var socket = io("http://192.168.0.106:80");

socket.on('connect', function () {
alert("connect");
});

socket.on('error', function (data) {
alert(data);
});

socket.on('disconnect', function () {
alert("disconnect");
});

socket.on("reconnect", function () {
alert("reconnect");
})

});

谢谢你的帮助,我的英语不是很好

最佳答案

当 deviceready 事件触发时,您必须打开 socket.io 连接。

document.addEventListener('deviceready', function() {

var socket = io("http://192.168.0.106:80");

socket.on('connect', function() {
alert("connect");
});

socket.on('error', function (data) {
alert(data);
});

socket.on('disconnect', function () {
alert("disconnect");
});

socket.on("reconnect", function () {
alert("reconnect");
});

});

Socket.io example

关于node.js - 使用 socket.io 时出现 xhr 轮询错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26667856/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com