Brook v20240606: 支持开发自己的用户系统

Updated at: 2024-05-13

https://github.com/txthinking/brook

支付开发自己的用户系统

  1. 客户端 brook link 支持追加一个自己用户系统用于标识用户唯一身份的 token
  2. 服务端 brook --userAPI 指定自己用户系统的用于验证 token 是否正确的 HTTP API

更多信息查看:https://github.com/txthinking/brook/blob/master/protocol/user.md

一个样本实现:https://github.com/txthinkinginc/brook-user-system

与之前的 brook-manager 的区别

早期有个类似的实现 brook-manager,其设计时期望实现所有相关的功能,但是也造成了不够灵活。比如当我们在服务端部署一个 Brook Server 时,根据不同的 brook link 参数组合客户端会有多个 Brook Server 可以使用,比如自己通过 brook relay 自定义路由就会导致客户端接入的 Server IP 并不是服务端部署的那个,比如搭配第三方 CDN 服务时,也会导致客户端接入的 Server IP 并不是服务端部署的那个。

所以新的用户系统只关注 --token--userAPI,保留最大的灵活性,并且用户也不再绑定端口,即部署单个 Brook Server 也可以用于多个用户。不同需求的人可以开发不同的用户系统。比如最小样本实现,就要求自己部署 Brook Server,然后生成一个或多个 brook link,然后将 brook link 填入的用户系统。当然你可以根据自己的需求开发全新的用户系统或者扩展这个样本实现来实现更多自动化或更多功能。

一个小技巧是 brook link --name 支持 emoji,比如:brook link -s 1.2.3.4:5 -p hello --udpovertcp --name '🇺🇸 US Server'


讨论