Einführung
Unter den Python-Bibliotheken, PyJWT ist die beliebteste Python-Bibliothek, die eine bequeme Möglichkeit bietet, JSON Web Tokens (JWTs) in Python-Projekten zu kodieren und zu dekodieren. JWTs sind ein kompaktes, URL-sicheres Mittel zur Darstellung von Ansprüchen, die zwischen zwei Parteien übertragen werden sollen. Das pyjwt-Paket erleichtert die Implementierung von JSON-Web-Tokens in Python. JWT-Tokens werden häufig für Authentifizierung und Informationsaustausch in Webanwendungen verwendet. Das Paket verfügt über umfangreiche Online-Dokumentation zur Unterstützung von Entwicklern. In diesem Artikel werden wir uns auch IronPDF von IronSoftware ansehen, um später PDF-Dokumente zu erstellen.
Wesentliche Merkmale
JWT-Kodierung und -Dekodierung: PyJWT ermöglicht es Ihnen, JWTs einfach zu kodieren und zu dekodieren. Sie können ein Token erstellen, indem Sie eine Nutzlast mit einem geheimen Schlüssel und einem Algorithmus kodieren und es später dekodieren, um die Nutzlast zu überprüfen.
Unterstützung für mehrere Algorithmen: PyJWT unterstützt verschiedene Algorithmen zum Signieren von Token, einschließlich HMAC (HS256, HS384, HS512) und RSA (RS256, RS384, RS512). Es unterstützt sowohl symmetrische als auch asymmetrische Algorithmen.
- Anspruchsvalidierung: Die Bibliothek bietet integrierte Unterstützung zur Validierung standardmäßiger Ansprüche wie is (Herausgeber), sub (Betreff), aud (Zielgruppe) und exp (Ablaufzeit), wie z. B. sichere tokenbasierte Authentifizierung.
Einrichtung
Um PyJWT zu installieren, können Sie pip verwenden:
pip install pyjwt
Für zusätzliche kryptografische Unterstützung können Sie es mit der Krypto-Option installieren:
pip install pyjwt[crypto]
Grundlegende Verwendung
Hier ist ein einfaches Beispiel, wie man die PyJWT-Python-Implementierung verwendet:
import jwt
# Encoding a JWT
payload = {"Message": "IronPDF is Awesome PDF library"}
secret = "your-256-bit-secret"
token = jwt.encode(payload, secret, algorithm="HS256")
print(token)
# Decoding a JWT
decoded_payload = jwt.decode(token, secret, algorithms=["HS256"])
print(decoded_payload)
In diesem Beispiel erstellen wir ein JWT, indem wir eine Nutzlast mit einem geheimen Schlüssel unter Verwendung des HS256-Algorithmus kodieren. Wir dekodieren dann das Token, um die ursprüngliche Nutzlast abzurufen.
Ausgabe

Anwendungsfälle
Authentifizierung: JWTs werden häufig zur Authentifizierung in Webanwendungen verwendet. Nachdem sich ein Benutzer eingeloggt hat, generiert der Server ein JWT und gibt das signierte Token an den Client zurück. Der Client kann die Benutzeridentität mit diesem Token überprüfen und das Token in nachfolgenden Anfragen einbeziehen.
- Informationsaustausch: Parteien können Informationen sicher mit JWTs übertragen. Die Nutzlast kann beliebige Daten enthalten; Die Signatur des Tokens gewährleistet seine Integrität.
Einführung in IronPDF

IronPDF ist eine leistungsstarke Python-Bibliothek zum Erstellen, Bearbeiten und Signieren von PDFs mithilfe von HTML, CSS, Bildern und JavaScript. Es bietet eine hohe Leistungsfähigkeit bei minimalem Speicherverbrauch. Benutzer können PDFs aus HTML generieren, PDF-Dokumente zusammenführen oder teilen, Text und Bilder aus PDFs extrahieren, Wasserzeichen anwenden, ein PDF in Bildformate wie JPEG und PNG rasterisieren, PDF-Dateien verschlüsseln, und mehr. IronPDF bietet eine breite Palette von PDF-Operationen.
Hauptmerkmale von IronPDF
Konvertierung von HTML in PDF
Benutzer können HTML-Dateien, HTML-Zeichenfolgen und URLs in PDFs umwandeln. Zum Beispiel, eine Webseite als PDF rendern mit dem Chrome PDF Renderer von IronPDF.
IronPDF ist für Python 3+ Versionen konzipiert und läuft auf Windows, Mac, Linux oder Cloud-Plattformen.
IronPDF ist auch in .NET, Java, Python und Node.js verfügbar.
Bearbeitung und Unterzeichnung
Der Benutzer kann Eigenschaften festlegen, Sicherheit mit Passwörtern und Berechtigungen hinzufügen und digitale Signaturen auf PDFs mit IronPDF anwenden.
Seitenvorlagen und Einstellungen
IronPDF ermöglicht es Ihnen, PDF-Dokumente mit Kopf- und Fußzeilen, Seitenzahlen und anpassbaren Rändern zu gestalten. Es unterstützt auch responsive Layouts und benutzerdefinierte Papiergrößen.
Einhaltung von Normen
Das IronPDF-Paket entspricht ebenfalls den PDF-Standards wie PDF/A und PDF/UA. Es unterstützt UTF-8-Zeichenkodierung und verarbeitet Assets wie Bilder, CSS und Schriftarten.
Erstellen Sie PDF-Dokumente mit IronPDF und PyJWT
IronPDF-Voraussetzungen
IronPDF verwendet .NET 6.0 als zugrunde liegende Technologie. Stellen Sie daher sicher, dass die .NET 6.0-Laufzeitumgebung auf Ihrem System installiert ist.
Python 3.0+: Sie müssen Python Version 3 oder höher installiert haben.
Pip: Installieren Sie den Python-Paketinstaller pip, um das IronPDF-Paket zu installieren.
Um zu beginnen, erstellen wir eine Python-Datei im Projektstammverzeichnis, um unsere Skripte hinzuzufügen. Für dieses Beispiel verwenden wir Visual Studio Code als Code-Editor.
Öffnen Sie Visual Studio Code und erstellen Sie eine Datei, pyjwtDemo.py.
IronPDF-Bibliothek installieren:
pip install ironpdf
pip install pyjwt
Fügen Sie dann den untenstehenden Code hinzu, um die Verwendung von IronPDF und PyJWT-Python-Paketen zu demonstrieren
import jwt
from ironpdf import *
# Apply your license key
License.LicenseKey = "your key"
# Create a PDF from a HTML string using Python
content = "<h1>Awesome IronPDF with PyJWT</h1>"
content += "<h2> Encoding a JWT</h2>"
# Encoding a JWT
payload = {"Message": "IronPDF is Awesome PDF library"}
secret = "your-256-bit-secret" # private key
token = jwt.encode(payload, secret, algorithm="HS256")
print(token) # public key
content += "<p>Message:IronPDF is Awesome PDF library</p>"
content += "<p>secret:your-256-bit-secret</p>"
content += "<p>Generated Token:"+str(token)+"</p>"
# Decoding a JWT
content += "<h2> Decoding a JWT</h2>"
decoded_payload = jwt.decode(token, secret, algorithms=["HS256"])
print(decoded_payload)
content += "<p>jwt.decode(token, secret, algorithms=[HS256]</p>"
content += "<p>Decoded Token:"+str(decoded_payload)+"</p>"
#Generate PDF using IronPDF
renderer = ChromePdfRenderer()
pdf = renderer.RenderHtmlAsPdf(content)
# Export to a file or Stream
pdf.SaveAs("Demo-pyjwt.pdf")
Code Erläuterung
Dieses Codebeispiel zeigt, wie die `jwt` (JSON Web Token) Bibliothek zusammen mit IronPDF verwendet wird, um ein PDF-Dokument zu erstellen, das Beispiele für das Encodieren und Decodieren von JWTs enthält.
Unten finden Sie einen Überblick über die Funktionen der einzelnen Codekomponenten:
Importe und Lizenzschlüssel-Einrichtung:
Importiert die `jwt`-Bibliothek für JSON Web Token-Funktionalität und `ChromePdfRenderer` von IronPDF zur PDF-Erzeugung.
Setzt den Lizenzschlüssel für IronPDF, um seine Funktionen zu aktivieren.2. HTML-Inhaltssetup:
Initialisiert die `content`-Variable mit HTML-Markup, das in das PDF-Dokument aufgenommen werden soll.3. Kodieren eines JWT:
Definiert ein Payload-Wörterbuch, das Daten enthält, die in das JWT (`payload`) kodiert werden sollen. Gibt einen geheimen Schlüssel (`secret`) für die Signierung des JWT mit dem HMAC-Algorithmus unter Verwendung von SHA-256 (`HS256`) an. Erzeugt ein JWT-Token mit der Funktion jwt.encode()
und gibt es aus.4. Dekodierung eines JWT:
Fügt HTML-Markup zur Darstellung der JWT-Entschlüsselung hinzu. Decodiert das zuvor erzeugte JWT (`token`) mit der `jwt.decode()`-Funktion unter Verwendung desselben Geheimnisses und Algorithmus, der für die Kodierung verwendet wurde.5. PDF-Erzeugung:
Es verwendet ChromePdfRenderer, um die `content` HTML-Zeichenfolge in ein PDF-Dokument zu rendern und die generierte PDF-Datei als "Demo-pyjwt.pdf" zu speichern. Diese Einrichtung ermöglicht die Erstellung eines PDF-Dokuments, das die Verwendung von JWTs mit IronPDF zur Erstellung von PDF-Dokumenten in professioneller Qualität demonstriert.
Ausgabe

PDF

IronPDF-Lizenz

IronPDF-Lizenzschlüssel, damit Benutzer die umfangreichen Funktionen vor dem Kauf ausprobieren können.
Platzieren Sie den Lizenzschlüssel am Anfang des Skripts, bevor Sie das IronPDF-Paket verwenden:
from ironpdf import *
# Apply your license key
License.LicenseKey = "key"
Schlussfolgerung
PyJWT ist eine leistungsstarke und flexible Bibliothek zur Arbeit mit JSON-Web-Tokens in Python. Seine Benutzerfreundlichkeit und Unterstützung für verschiedene Algorithmen machen es zu einer beliebten Wahl für die Implementierung tokenbasierter Authentifizierung und den sicheren Informationsaustausch in Webanwendungen. Andererseits ist IronPDF eine vielseitige und funktionsreiche PDF-Erzeugungsbibliothek, die dabei hilft, die Ergebnisse in standardisierter Weise zu dokumentieren. Diese beiden Bibliotheken können für Entwickler wahre Wunder bewirken, um ihre Fähigkeiten zu verbessern.