跳到主要内容

8.1、开始运行

1、入口

说明
  1. 在你的.NET8.0+项目中,集成linker
  2. 在nuget安装linker.messenger.entry
//初始化
LinkerMessengerEntry.Initialize();
//在这里可以注入你自己的内容,比如覆盖一下公共配置存储库的实现
//LinkerMessengerEntry.AddService<ICommonStore, MyCommonStore>();

//构建
LinkerMessengerEntry.Build();
//在build之后,可以获取服务做一些操作
//比如获取一下公共配置,设置运行模式为client+server
//ICommonStore commonStore = LinkerMessengerEntry.GetService<ICommonStore>();
//commonStore.SetModes( CommonModes.Client | CommonModes.Server);
//commonStore.Confirm();

//比如不启用api和网页
//IApiStore apiStore = LinkerMessengerEntry.GetService<IApiStore>();
//apiStore.SetApiPort(0);
//apiStore.SetWebPort(0);
//apiStore.Confirm();

//启动,在这里可以排除一些模块,ExcludeModule.Node 不排除,比如我不需要检测更新和管理接口和网页
LinkerMessengerEntry.Setup(ExcludeModule.Updater | ExcludeModule.Api );

2、一些配置接口

说明
  1. 你可以在initialize之后注入覆盖这些实现,和build之后获取这些接口来操作配置
  2. 管理接口详情请看各个组件里的IApiController实现,包含了全部的管理接口
  3. 客户端服务端公共配置ICommonStore
  4. 自定义验证,Action的配置,客户端IActionClientStore,服务端IActionServerStore
  5. 管理api配置,IApiStore,权限设置,IAccessStore
  6. 端口转发配置 IForwardClientStore(增删改使用ForwardTransfer操作)
  7. 服务端监听配置 IListenStore
  8. 日志配置 ILoggerStore
  9. 中继配置,客户端IRelayClientStore,服务端IRelayServerStore,服务端中继节点IRelayServerNodeStore,服务端中继主机IRelayServerMasterStore
  10. 服务器穿透,客户端ISForwardClientStore(增删改使用SForwardClientTransfer操作),服务端ISForwardServerStore
  11. 登录相关配置,客户端ISignInClientStore,服务端ISignInServerStore
  12. socks5配置ISocks5Store(使用Socks5Transfer操作)
  13. 打洞配置ITunnelClientStore
  14. 虚拟网卡配置ITuntapClientStore(使用TuntapConfigTransfer操作)
  15. 自动更新,公共配置IUpdaterCommonStore,客户端IUpdaterClientStore,服务端IUpdaterServerStore

3、一些对象

说明
  1. 你可以在build之后获取这些对象
  2. 信标客户端,数据发送MessengerSender,登录状态,SignInClientState,登录操作,SignInClientTransfer
  3. 信标服务端,数据发送MessengerSender,登录缓存,SignInServerCaching
  4. 数据同步,实现了IDecenter接口的类,是各个模块的数据同步类,可以获取这些类来立即刷新数据同步