命令行执行插件客户端、服务器均支持
WSCommandLinePlugin命令行执行插件,是用于WebSocket的快捷事务实现,让WS在Text文本中,用最简单的文字消息即可完成相关事务的执行。该类是抽象类,必须通过继承,在继承类中,声明的具的公共的且名称以Command结尾的方法,均可被快捷执行。
例如:下列插件,即可被普通WS客户端,或服务器便捷调用。
调用数据格式:Add 10 20
支持Json数据格式
var service = new HttpService();
service.AddPlugin<WebSocketServerPlugin>().//添加WebSocket功能
SetTimeout(10 * 1000).
SetWSUrl("/ws");
service.AddPlugin<MyWSCommandLinePlugin>();//添加WS命令行事务。
var config = new RRQMConfig();
config.UsePlugin()
.SetReceiveType(ReceiveType.Auto)
.SetListenIPHosts(new IPHost[] { new IPHost(7789) });
service.Setup(config).Start();
Console.WriteLine("Http服务器已启动");
Console.WriteLine("WS访问:ws://127.0.0.1:7789/ws");
/// <summary>
/// 命令行插件。
/// 声明的方法必须以"Command"结尾,支持json字符串,参数之间空格隔开。
/// </summary>
class MyWSCommandLinePlugin : WSCommandLinePlugin
{
public int AddCommand(int a, int b)
{
return a + b;
}
public SumClass SumCommand(SumClass sumClass)
{
sumClass.Sum = sumClass.A + sumClass.B;
return sumClass;
}
}
class SumClass
{
public int A { get; set; }
public int B { get; set; }
public int Sum { get; set; }
}