KY0070 2021-04-15 17:44 采纳率: 100%
浏览 152
已采纳

vue前端socket显示已连接,NodeJs后台却没有反应,请大家帮忙看看哪出问题了?

代码如下:

前端

import VueSocketIO from 'vue-socket.io';
import SocketIO from 'socket.io-client';

Vue.use(new VueSocketIO({
        debug: true,
        connection: SocketIO('http://localhost:3001', { transports: ['websocket'] }), //'http://localhost:3001'就是后端地址

    })
);

 

 

后端

socketio.js文件:

//socket端口
let socket={}

function io(server){
    const io = require('socket.io')(server,{transports: ['websocket']})
    
    io.on('connection', (socket) => {
        console.log('a user connected');

        socket.on('message',data=>{
            console.log(data);
            socket.emit('showRemainder','得到msg');
        })


        socket.broadcast.emit('ground',"自律给我自由")
        socket.emit('showRemainder','得到msg');
    });
    console.log('socket is build');
}

socket.io=io

module.exports=socket

app.js文件,程序主入口:

//服务端口
const server = app.listen(3001, function () {
    let host = server.address().address
    let port = server.address().port
    console.log("应用实例,访问地址为 http://%s:%s", host, port)
})
//websocket端口
const socket=require('./socketio')
socket.io(server)


//设置允许跨域
app.use(function (req, res, next) {
    //指定允许其他域名访问 *所有
    res.setHeader("Access-Control-Allow-Origin", "*");
    //允许客户端请求头中带有的
    res.setHeader("Access-Control-Allow-Headers", "Content-Type,Content-Length, Authorization, Accept,X-Requested-With");
    //允许请求的类型
    res.setHeader("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS");
    res.setHeader("X-Powered-By", ' 3.2.1')
    //让options请求快速返回
    if (req.method == "OPTIONS") res.send(200);
    else next();
});

其中

运行效果:

 

后台啥也没有反应,跪求大佬们帮我看一下吧,感激

 

  • 写回答

3条回答 默认 最新

  • 关注

    let host = server.address().address,打印一下host是不是localhost

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵