using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using Quobject.SocketIoClientDotNet.Client;
namespace socket
{
class Program
{
static void Main(string[] args)
{
var socket = IO.Socket("http://114.55.104.1:8090/");//实例化对象
socket.On(Socket.EVENT_CONNECT, () => //监听链接
{
Console.WriteLine("链接成功");
socket.Emit("hi","ccdcd"); //发送消息,前面是事件后面是时间 注意:发消息要保证链接是通的,如果链接不通就发数据,再链接上就发不出去
socket.On("cd", (data) => //监听事件
{
var b=(JObject)data; //将数据转一下
Console.WriteLine(b['name']);
Console.WriteLine(data);
socket.Disconnect(); //退出链接
});
});
socket.Connect(); //链接
socket.On(Socket.EVENT_DISCONNECT,()=> {
this.m_robot.OutLogMsg("退出联网");
conn_net = false;
socket.Close();
}); //socket.close(); 方法只能在这里disconnect 下 关闭其他如 reconnet等等不行
Console.ReadKey();
}
}
}
socket里面 用 json 传数据
JObject a=new JObject();
a.Add("name","liushuai");
JArray arr = new JArray();
arr.Add(new JValue(1));
arr.Add(new JValue(2));
a.Add('time',arr);
socket.Emit("data",a);
参考地址:https://stackoverflow.com/questions/39135966/unable-to-use-socketioclientdotnet-with-external-server
https://stackoverflow.com/questions/32190867/socket-io-in-c-socketioclientdotnet-and-socketio4net-failed