【问题标题】:Csharp with node.js and socket.ioCsharp 与 node.js 和 socket.io
【发布时间】:2017-02-26 19:41:36
【问题描述】:

我想将数据从 csharp 实时发送到网页,而无需重新加载或任何烦人的事情,所以我决定使用 Node.JS 和 socket.io

我对 socket.io 和 node.js 完全陌生,如果这不是它的工作原理,请纠正我...

1) 我使用以下代码从我的 Csharp 应用程序发送数据。

using Quobject.SocketIoClientDotNet.Client;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Plus.HabboHotel.Roleplay.Extra.SocketIO
{
    public static class SocketIOManager
    {
        public static void SendMessage(string message)
        {
            var socket = IO.Socket("http://127.0.0.1:400");

            socket.On(Quobject.SocketIoClientDotNet.Client.Socket.EVENT_CONNECT, () =>
            {
                socket.Emit("emu_msg", @"Hello from PlusEMU");
                socket.Disconnect();
            });
        }
    }
}

2) Node.JS app.js 把它捡起来

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

io.on('connection', function(socket){
  console.log('a user connected');
});

io.on('emu_msg', function(socket){
  console.log('emu message received?');
});

http.listen(400, function(){
  console.log('listening on *:400');
});

现在在 node.js 控制台上,我应该得到“收到 emu 消息”,我不应该吗?我没有收到那个

有人知道为什么吗?

在访问使用以下代码的网页时,我确实收到了“用户已连接”

<script>
    var socket = io.connect('http://127.0.0.1:400');
    socket.on('emu_msg', function(data) {
        alert(data);
    });
    </script>

但是,当使用 csharp 发送消息时,我什么也没有收到,甚至用户连接消息也没有,我在这里遗漏了什么吗?而且我在使用 csharp 发送时也没有在网页上收到警报。

【问题讨论】:

  • 我使用 csharp 中的 SocketIoClient.Net 库来发送数据
  • 也许您想要一个带有 SignalR 的 ASP.NET MVC 应用程序?这样你就不需要学习 Node 和 socket.io

标签: javascript c# node.js sockets socket.io


【解决方案1】:

在客户端上,您应该正在侦听套接字上的消息。

io.on('connection', function(socket){
  console.log('a user connected');
  socket.on('emu_msg', function(msg){
    console.log('emu message received?');
  });
});

请参阅:here 了解更多信息

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-05
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-05
    • 2013-05-27
    • 2012-06-04
    相关资源
    最近更新 更多