UUID-Generierung
UUID-Generierung
Abschnitt betitelt „UUID-Generierung“Generieren Sie universell eindeutige Identifikatoren. Angepasst für Workflows - zufällige UUIDs geben bei Replay konsistente Werte zurück.
local uuid = require("uuid")Zufällige UUIDs
Abschnitt betitelt „Zufällige UUIDs“Version 1
Abschnitt betitelt „Version 1“Zeitbasierte UUID mit Zeitstempel und Knoten-ID.
local id, err = uuid.v1()Gibt zurück: string, error
Version 4
Abschnitt betitelt „Version 4“Zufällige UUID.
local id, err = uuid.v4()Gibt zurück: string, error
Version 7
Abschnitt betitelt „Version 7“Zeitgeordnete UUID. Nach Erstellungszeit sortierbar.
local id, err = uuid.v7()Gibt zurück: string, error
Deterministische UUIDs
Abschnitt betitelt „Deterministische UUIDs“Version 3
Abschnitt betitelt „Version 3“Deterministische UUID aus Namespace und Name mit MD5.
local id, err = uuid.v3(namespace, name)| Parameter | Typ | Beschreibung |
|---|---|---|
namespace | string | Gültiger UUID-String |
name | string | Zu hashender Wert |
Gibt zurück: string, error
Version 5
Abschnitt betitelt „Version 5“Deterministische UUID aus Namespace und Name mit SHA-1.
local NS_URL = "6ba7b811-9dad-11d1-80b4-00c04fd430c8"local id, err = uuid.v5(NS_URL, "https://example.com/resource")| Parameter | Typ | Beschreibung |
|---|---|---|
namespace | string | Gültiger UUID-String |
name | string | Zu hashender Wert |
Gibt zurück: string, error
Inspektion
Abschnitt betitelt „Inspektion“Validieren
Abschnitt betitelt „Validieren“local valid = uuid.validate(input)| Parameter | Typ | Beschreibung |
|---|---|---|
input | any | Zu prüfender Wert |
Gibt zurück: boolean, error
Version abrufen
Abschnitt betitelt „Version abrufen“local ver, err = uuid.version(id)| Parameter | Typ | Beschreibung |
|---|---|---|
uuid | string | Gültiger UUID-String |
Gibt zurück: integer, error
Variante abrufen
Abschnitt betitelt „Variante abrufen“local var, err = uuid.variant(id)| Parameter | Typ | Beschreibung |
|---|---|---|
uuid | string | Gültiger UUID-String |
Gibt zurück: string, error (RFC4122, Reserved, Microsoft, Future, NCS oder Invalid)
local info, err = uuid.parse(id)| Parameter | Typ | Beschreibung |
|---|---|---|
uuid | string | Gültiger UUID-String |
Gibt zurück: table, error
Zurückgegebene Tabellenfelder:
version(integer): UUID-Version (1, 3, 4, 5 oder 7)variant(string): RFC4122, Reserved, Microsoft, Future, NCS oder Invalidtimestamp(integer): Unix-Zeitstempel (nur v1 und v7)node(string): Knoten-ID (nur v1)
Formatieren
Abschnitt betitelt „Formatieren“local formatted, err = uuid.format(id, "standard")local formatted, err = uuid.format(id, "simple")local formatted, err = uuid.format(id, "urn")| Parameter | Typ | Beschreibung |
|---|---|---|
uuid | string | Gültiger UUID-String |
format | string? | standard (Standard), simple oder urn |
Gibt zurück: string, error
| Bedingung | Art | Wiederholbar |
|---|---|---|
| Ungültiger Eingabetyp | errors.INVALID | nein |
| Ungültiges UUID-Format | errors.INVALID | nein |
| Nicht unterstützter Formattyp | errors.INVALID | nein |
| Generierung fehlgeschlagen | errors.INTERNAL | nein |
Siehe Fehlerbehandlung für die Arbeit mit Fehlern.