• Node.js Video Tutorials

NodeJS - crypto.randomUUID() 方法


NodeJs 的Crypto randomUUID() 方法用于使用密码学安全的随机数生成器生成版本 4 的 UUID。此功能仅在某些受支持的浏览器中的安全上下文中(例如 HTTPS)才可访问。

在 NodeJS 中,UUID 代表“通用唯一标识符”。它是一个标准代码,包含一个 128 位的标识号,可以扩展到最多 36 个字符。

它通常用于为信息分配唯一标识符,而无需中央权威。

语法

以下是 NodeJs 的crypto.randomUUID() 方法的语法:

Crypto.randomUUID()

参数

  • 此方法不接受任何参数。

返回值

此方法返回一个字符串,其中包含一个随机生成的、36 个字符长的 v4 UUID。

示例 1

以下是 NodeJs crypto.randomUUID() 方法的基本示例。

const { randomUUID } = require('crypto');  // crypto module
const uuid = randomUUID(); // randomUUID
console.log(uuid);

输出

以上程序产生以下输出:

856eb718-c0d0-481b-ae8a-2f4f600bce97

示例 2

在创建可访问的 API 时,如果要为客户端生成唯一的 API 访问密钥,则可以使用 randomUUID()。

const { randomUUID } = require('crypto');

function generateApiKey() {
    const apiKey = randomUUID();
    console.log(`Generate API key: ${apiKey}`);
    return apiKey;
}

const apiKey = generateApiKey();

输出

以上程序产生以下输出:

Generate API key: ff0858e4-a9c7-4074-bf69-8675b7a067b0

示例 3

在 Web 应用程序中,您可以在用户登录时使用 randomUUID() 为用户创建唯一的会话标识符 (ID)。

const { randomUUID } = require('crypto');
const sessionStore = {};

function createSession(userId) {
    const sessionId = randomUUID();
    sessionStore[sessionId] = { userId, createdAt: Date.now() };
    console.log(`Session created for user ${userId} with session ID: ${sessionId}`);
    return sessionId;
}

输出

执行上述程序后,它将显示以下输出:

Session created for user user123 with session ID: 2df24095-f982-48d4-81c5-e5abc36c2ab4
nodejs_crypto.htm
广告

© . All rights reserved.