跳到主要内容
版本:1.3.9

WSCommandLinePlugin

命令行执行插件客户端、服务器均支持

WSCommandLinePlugin命令行执行插件,是用于WebSocket的快捷事务实现,让WS在Text文本中,用最简单的文字消息即可完成相关事务的执行。该类是抽象类,必须通过继承,在继承类中,声明的具的公共的且名称以Command结尾的方法,均可被快捷执行。

例如:下列插件,即可被普通WS客户端,或服务器便捷调用。

调用数据格式: Add 10 20支持Json数据格式

var service = new HttpService();

var config = new TouchSocketConfig();
config.UsePlugin()
.SetReceiveType(ReceiveType.Auto)
.SetListenIPHosts(new IPHost[] { new IPHost(7789) })
.ConfigureContainer(a=>
{
a.SetSingletonLogger<ConsoleLogger>();
})
.ConfigurePlugins(a=>
{
a.Add<WebSocketServerPlugin>();//添加WebSocket功能
a.Add<MyWSCommandLinePlugin>();//添加WS命令行事务。
});

service.Setup(config)
.Start();
service.Logger.Message("Http服务器已启动");
service.Logger.Message("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; }

}