npm 包 @daonomic/lib 使用教程

阅读时长 6 分钟读完

简介

@daonomic/lib 是一个 Node.js 的后端库,提供了一些常用的功能。

安装

首先,需要在项目中安装 @daonomic/lib 依赖:

功能

@daonomic/lib 提供以下功能:

1. IP 地址相关

  • ip.isValidIp(ip: string): 判断 IP 地址是否合法
  • ip.ipv4Range(ip: string, range: string): 判断 IPv4 地址是否在给定的 CIDR 范围内
  • ip.getPublicIp(): 获取公网 IP 地址

2. 日期时间相关

  • time.sleep(ms: number): 暂停执行
  • time.getIsoDate(date: Date): 获取 ISO 格式的日期字符串
  • time.getUnixTime(date: Date): 获取 Unix 时间戳

3. 加密相关

  • crypto.sha256(data: string | Buffer): 计算 SHA256 哈希值
  • crypto.sha256async(data: string | Buffer): 异步计算 SHA256 哈希值

4. 其他工具

  • tools.repeat(action: () => Promise<any>, maxTries: number, intervalMs: number): 最多重试给定的异步操作
  • tools.chain(asyncFns: Array<() => Promise<any>>): Promise<void>: 串行执行异步函数
  • tools.parallel(asyncFns: Array<() => Promise<any>>): Promise<Array<any>>: 并行执行异步函数

使用示例

1. 判断 IP 地址是否合法

2. 判断 IPv4 地址是否在给定的 CIDR 范围内

3. 获取公网 IP 地址

4. 计算 SHA256 哈希值

5. 最多重试给定的异步操作

-- -------------------- ---- -------
----- ----- - -------------------------------

--- ----- - --

----- --------- - ----- -- -- -
  --------
  ---------------- -----------
  -- ------ - -- -
    ----- --- ----------------
  - ---- -
    ------ ----------
  -
--

----------------------- --- ------------------------
展开代码

6. 串行执行异步函数

-- -------------------- ---- -------
----- ----- - -------------------------------

----- -------- - ----- -- -- -
  ----- ------------------
  --------------------- ----
--

----- -------- - ----- -- -- -
  ----- ------------------
  --------------------- ----
--

---------------------- -----------------------------
展开代码

7. 并行执行异步函数

-- -------------------- ---- -------
----- ----- - -------------------------------

----- -------- - ----- -- -- -
  ----- ------------------
  --------------------- ----
  ------ --
--

----- -------- - ----- -- -- -
  ----- ------------------
  --------------------- ----
  ------ --
--

------------------------- ----------------------------- -- --- --
展开代码

结论

@daonomic/lib 是一个简单实用的 Node.js 后端库,为后端开发提供了一些常用的工具函数和功能。在实际开发中,可以借助 @daonomic/lib 提供的

  • IP 地址相关
  • 日期时间相关
  • 加密相关
  • 其他工具

等各个方面的便捷功能,提高开发效率。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671d630d0927023822c30

纠错
反馈

纠错反馈