小工具 / UDP 服务端

Bittly 小工具 UDP 服务端

UDP 服务端小工具用于创建一个可以同时接受多个客户端连接的 UDP 服务端。

手动回复

Bittly 小工具 UDP 服务端 手动回复

手动回复需要手动填写回复内容,并且只能回复到当前激活的客户端中.

Echo模式

Bittly 小工具 UDP 服务端 ECHO回复

echo 模式将响应任何收到的内容,并且不做其他处理

随机模式

Bittly 小工具 UDP 服务端 随机回复

随机模式用于自动响应随机内容,通过配置随机模板来产生随机内容, 如果模板为空,则随机响应一个字符. 随机模板示例:

the random number is : {{n}}{{n}}{{n}}

则响应的数据可以为 :

the random number is : 153

支持的随机数据标识符如下:

  • {{n}} : 随机数1位 0 - 9
  • {{a}} : 小写字母1位 a - z
  • {{A}} : 大写字母1位 A - Z

  • {{hex}} : 十六进制字符1位 0-9 A-F

  • {{byte}} : 十六进制字符2位 0-9 A-F
  • {{internet.domainName}} : 主机地址, 例如 muddy-neuropathologist.net
  • {{internet.domainSuffix}} : 域名后缀,例如 com
  • {{internet.email}} : 邮箱地址
  • {{internet.httpStatusCode}} : HTTP 状态码 ,例如 404
  • {{internet.ip}} : ip 地址
  • {{internet.ipv4}} : ipv4 地址
  • {{internet.ipv6}} : ipv6 地址, 例如: 269f:1230:73e3:318d:842b:daab:326d:897b
  • {{internet.mac}} : MAC 地址, 例如: 89:bd:9d:8d:69:a6
  • {{internet.url}} , URL 链接, 例如 : https://optimistic-rabbi.org

    更多参考标识符参考 https://fakerjs.dev/guide/

脚本模式

Bittly 小工具 UDP 服务端 脚本回复

通过书写执行脚本来自动生成响应内容, 例如:

// 将收到的数据再发送回去
let hex = $this.requestHexGet();
$this.responseHex(hex);

方法说明:

// 获取十六进制请求字符串
let hex = $this.requestHexGet();

// 获取请求字节数组
let bytes = $this.requestBytesGet();
// 可通过下表获取每个字节的数据
let firstByte = bytes[0];

// 获取请求文本数据
let text = $this.requestTextGet();

// 响应十六进制字节数据
$this.responseHex("AA BB CC DD");

// 响应文本数据
$this.responseText("how are you ?");

// 响应字节数据
$this.responseBytes(bytes);

匹配模式

Bittly 小工具 UDP 服务端 匹配回复

匹配模式是将请求作为字符串来处理,字节类型请求数据则会转换为 HEX 字符串之后进行匹配处理。

在匹配时,每条规则的匹配模板需要全部匹配到请求内容。例如请求内容为 : 12345 ,则匹配模板 12345 可以匹配, 1234 不可以匹配, 1.*5 可以匹配。

匹配方式为正则匹配,即每个模板都会生成一个正则表达式来进行计算, 例如模板 1234, 则会生成的正则表达式为 ^1234$

当遇到第一个匹配规则时,则直接进行回复,不再继续往下匹配。

响应内容支持插入匹配结果,匹配结果可通过索引号,或者分组名称来使用, 使用{{1}} 来引入索引结果,使用{{name}} 来引入分组结果。例如:

模板 1:how are you
模板 2:how (are) you
模板 3:how (?<who>are) you

则响应内容可配置为:

模板 1 响应:{{0}}
模板 2 响应:{{0}} {{1}}
模板 3 响应:{{0}} {{1}} {{who}}

假设请求内容为 how are you ,则对方收到的内容为:

模板 1 响应:how are you
模板 2 响应:how are you are
模板 3 响应:how are you are are

另外,响应模板中支持使用随机占位符,例如:

{{1}} {{who}} {{internet.ip}} {{byte}}

那么, {{1}} 为引用正则匹配的分组结果, {{who}} 为引用正则分组的名称, 如果该名称不存在,则会作为随机占位符来计算,例如, 如果正则匹配分组中不存在 {{byte}} 分组,则 {{byte}} 会作为一个随机占位符来生成一个随机的字节数据。 {{internet.ip}} 为直接使用随机占位符,用来生成一个随机的IP地址字符串。

关于随机占位符的说明,请参考响应模式中的 随机模式

    Bittly
    Bittly
    不止是一个串口调试助手 (~ ̄▽ ̄)~
    微信 sigech--
    微信 sigech--
    应用信息
    使用说明
    © 2024 苏ICP备20029453号-1