Использование сокета io, nodejs + angular - PullRequest
0 голосов
/ 01 сентября 2018

Я очень плохо знаком с сокетом Io, узловым и угловым. В настоящее время я работаю над пространством имен, но не могу подключиться к другому пространству имен. Не могли бы вы взглянуть, что я делаю не так?

Server.js

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

//namespace
var nsp = io.of('/nsp');


//when nsp connected
nsp.on('connection', (socket) =>{
       console.log('nsp connected');

 //when nsp disconnected
 nsp.on('disconnect', function(){
       console.log('nsp disconnected');
        });
    });

//route for nsp
app.get('/nsp', (req, res) => {
    res.send(console.log('Hello'));
});

App.component.ts

import { Component, OnInit } from '@angular/core';
import * as io from 'socket.io-client';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})

export class AppComponent{
  nsp;

  constructor() {
    this.nsp = io('http://localhost:3000/nsp');
  }

если пользователь имеет доступ к http://localhost:3000/nsp тогда консоль должна напечатать nsp подключено , которое я объявил в nsp.on('connection',(socket) =>{console.log('nsp connected');

1 Ответ

0 голосов
/ 01 сентября 2018

Поскольку ваш маршрут имеет вид / api / nsp , а не просто / nsp , ваш код в App.component.ts должен выглядеть следующим образом:

constructor() {
    this.nsp = io('http://localhost:3000/api/nsp');
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...