gpt4 book ai didi

node.js - 套接字 Io 未找到 404

转载 作者:太空宇宙 更新时间:2023-11-04 00:22:42 25 4
gpt4 key购买 nike

我正在尝试基于此 tutorial 使用 Socket IO 在 Angular 2 中创建聊天,但是当我尝试在服务器上进行测试时收到此错误消息:

GET http://localhost:3000/socket.io/?EIO=3&transport=polling&t=LmD1N_Z 404 (Not Found)

应用程序在端口 3000 上运行,而服务器在端口 8000 上运行,我认为这就是我收到此错误的原因。有没有办法让服务器和应用程序在同一端口上运行?

以下是应用程序中的一些代码:这是我尝试进行测试的组件:

import { Component, OnInit} from '@angular/core';
import {Http, Headers} from '@angular/http';
import {Location} from '@angular/common';
import {Routes, RouterModule, Router} from '@angular/router';
import * as io from 'socket.io-client'

@Component({
moduleId: module.id,
selector: 'atendimento',
templateUrl: `atendimento.component.html`
})

export class AtendimentoComponent implements OnInit{
socket:SocketIOClient.Socket;
constructor(private location: Location) {
this.socket = io.connect();
}

ngOnInit(){
this.socket.emit('event1',{
msg: 'Can you hear me? Over'
});
this.socket.on('event2', (data:any)=>{
console.log(data.msg);
this.socket.emit('event3', {
msg: 'yes, its working for me'
})
})
this.socket.on('event4', (data:any)=>{
console.log(data.msg)
})
}

这是我与服务器建立连接的server.js:

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

const port = 8000;

app.use(express.static(path.join(__dirname, "/")));

io.on("connection", (socket) => {
console.log('new connection made');


socket.on('event1', (data) => {
console.log(data.msg);
})

socket.emit('event2', {
msg: 'Server to client, do you read me? Over'
})

socket.on('event3', (data) => {
console.log(data.msg);
socket.emit('event4', {
msg: 'Loud and Clear :)'
})
})
})

server.listen(port, () => {
console.log("Listening on port" + port);
})

有人可以帮助我吗?谢谢,如果您需要更多代码,请告诉我。

最佳答案

只需使用正确的服务器 url 连接套接字 io 即可:

替换:

this.socket = io.connect();

与:

this.socket = io('http://localhost:8000');

关于node.js - 套接字 Io 未找到 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43985112/

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