ReferenceError:未定义套接字。套接字.io
Posted
技术标签:
【中文标题】ReferenceError:未定义套接字。套接字.io【英文标题】:ReferenceError: socket is not defined. socket.io 【发布时间】:2019-02-20 02:22:45 【问题描述】:socket.io 中出现此错误
//SERVER.JS
var express = require('express');
var app = express();
var bodyParser = require('body-parser');
var port = process.env.PORT || 8080;
var http = require('http').Server(app);
var io = require('socket.io')(http);
require('./app/routes.js')(app, io);
//ROUTES.JS
socket.emit('dlReady', description: 'Your file is ready!');
我收到此错误:
ReferenceError: socket is not defined
编辑:
app.post('/pst', function(req, res)
var url = req.body.convo;
res.render('processing.ejs');
funker(url).then(result =>
console.log('TAKE A LOOK AT THIS!');
socket.emit('dlReady', description: 'Your file is ready!');
//transforming array to string to pass to Buffer.from()
//then we remove ',' with newlines, so each index of array is a new line
var str = result.toString();
result = str.split(',').join('\r\n');
str = ''; //garbage collection
resultGlobal = result;
result = ''; //garbage collection
).catch(err =>
console.log(err);
res.render('error.ejs');
)
);
【问题讨论】:
请查看socket的使用方法:***.com/questions/11498508/socket-emit-vs-socket-send 向我们展示 routes.js 中的其余相关代码。 【参考方案1】:如何使用套接字:
var io = require('socket.io').listen(80);
io.sockets.on('connection', function (socket)
socket.emit('news', hello: 'world' );
socket.on('my other event', function (data)
console.log(data);
);
);
【讨论】:
我在什么文件中写入 var io = require 行? 当我想发出一个事件时会发生什么,而不是在用户连接的那一刻? 试试这个 io.sockets.emit('hello'); 但这就是我在问题中包含的代码中所做的!我的代码有什么错误?要求行?我在哪里写?以上是关于ReferenceError:未定义套接字。套接字.io的主要内容,如果未能解决你的问题,请参考以下文章
使用快速会话的套接字 IO - socket.request.res 未定义