import {PdfDocument} from "@ironsoftware/ironpdf";
(async () => {
// Create a PDF from an HTML string
const pdf = await PdfDocument.fromHtml("<h1>Hello World</h1>");
// Export the PDF to a file
await pdf.saveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external HTML assets: Images, CSS, and JavaScript.
const htmlContentWithAssets = "<img src='icons/iron.png'>";
const advancedPdf = await PdfDocument.fromHtml(htmlContentWithAssets);
// Save the PDF with loaded assets
await advancedPdf.saveAs("html-with-assets.pdf");
})();
oauth2orize NPM (Comment ça marche pour les développeurs)
Kannapat Udonpant
octobre 24, 2024
Partager:
Introduction
La création de contenu dynamique et une sécurité solide sont essentielles pour les applications web d'aujourd'hui. En permettant aux applications de fournir un accès restreint ou limité aux ressources au nom d'un utilisateur sans divulguer d'informations d'identification,OAuth 2.0 est devenu le cadre de facto pour une autorisation sûre. Le module Node.js adaptable OAuth2orize fournit un cadre solide pour la gestion de l'authentification sécurisée basée sur les jetons d'accès, ce qui facilite la configuration des serveurs d'autorisation OAuth 2.0.
Parallèlement, la capacité de générer et de manipuler des documents PDF de manière programmatique constitue une demande typique dans plusieurs domaines, notamment la production de rapports et les systèmes de facturation. La génération, l'édition et le rendu de documents PDF simples sont facilités par IronPDF, un utilitaire puissant dans l'environnement Node.js.
Ce tutoriel construit une application Node.js dynamique et sûre en combinant les meilleures fonctionnalités d'IronPDF et d'OAuth2orize. Vous découvrirez comment gérer l'authentification et l'autorisation des utilisateurs en configurant un serveur OAuth 2.0 avec OAuth2orize. Vous apprendrez également à utiliser IronPDF pour créer des documents PDF accessibles via des points de terminaison d'API nécessitant une authentification.
Qu'est-ce que OAuth2orize ?
Un framework Node.js appeléOAuth2orize oAuth 2.0 fournit aux développeurs les ressources dont ils ont besoin pour créer des serveurs d'autorisation OAuth 2.0. Elle permet de traiter et de gérer le flux de travail complexe d'OAuth 2.0, qui comprend la création, la validation et l'administration de jetons de rafraîchissement. Cette bibliothèque étant conçue pour interagir avec le framework Express, les développeurs qui sont déjà familiarisés avec Express la trouveront tout à fait naturelle.
Caractéristiques et composants détaillés d'OAuth2orize
Grant Types Support
L'octroi d'un code d'autorisation convient mieux aux applications côté serveur dans lesquelles le code d'autorisation peut être stocké en toute sécurité par le client, puis échangé contre un jeton d'accès.
Subvention implicite : Convient aux programmes côté client, tels que les applications à une page, dans lesquels le client reçoit immédiatement le jeton d'accès.
**Le mot de passe du propriétaire de la ressource (Propriétaire de la ressource Mot de passe Informations d'identification Octroi) : Généralement appliquée aux clients de première partie, cette option est utile lorsque le propriétaire de la ressource et le client entretiennent une relation de confiance.
Client Credentials Grant : Utilisé dans les interactions entre machines(serveurs et clients) le client doit s'authentifier à l'aide de requêtes API pour recevoir un jeton d'accès.
Intégration d'intergiciels
Express Middleware : OAuth2orize s'intègre facilement à l'architecture de routage et de middleware Express, fonctionnant comme un middleware à l'intérieur d'une application Express.
Intégration avec Passport.js : OAuth2orize s'intègre parfaitement à Passport.js, un intergiciel d'authentification riche en fonctionnalités pour Node.js, permettant aux développeurs d'utiliser une variété de techniques d'authentification en plus d'OAuth 2.0.
Token Management
Jetons d'accès : Les jetons transitoires qui donnent accès aux ressources sont restreints.
Jetons de rafraîchissement : Il s'agit de jetons de longue durée qui permettent aux utilisateurs d'obtenir de nouveaux jetons d'accès sans avoir à s'authentifier à nouveau.
**Subventions et extensions personnalisées
Grâce à la grande adaptabilité d'OAuth2orize, les développeurs peuvent créer des types de subventions et de réponses sur mesure pour répondre aux exigences d'applications particulières.
Points à retenir en matière de sécurité
OAuth2orize gère l'émission, la validation et la révocation des jetons en toute sécurité, favorisant ainsi la sécurité des applications OAuth 2.0. Il est recommandé aux développeurs d'adhérer aux meilleures pratiques d'OAuth 2.0, qui comprennent l'utilisation de HTTPS, la validation des URI de redirection et le stockage des jetons dans un emplacement sécurisé.
Créer et configurer OAuth2orize
Suivez ces instructions pour configurer et établir un serveur d'autorisation OAuth 2.0 dans Node.js en utilisant OAuth2orize. Nous allons définir des types de subventions, construire des API pour l'autorisation et l'échange de jetons, et mettre en place un serveur d'autorisation. Pour l'authentification des utilisateurs dans cette configuration, Passport.js, OAuth2orize et Express seront utilisés.
Installer les dépendances
Tout d'abord, initialisez votre projet Node.js et installez les dépendances nécessaires.
Vous avez utilisé avec succès OAuth2orize dans Node.js pour établir et configurer un serveur d'autorisation OAuth 2.0 en suivant les étapes suivantes. Cette configuration montre comment gérer les subventions pour les codes d'autorisation, les convertir en jetons d'accès et utiliser les jetons de porteur pour sécuriser les points d'extrémité de l'API. Pensez à mettre en œuvre un traitement approprié des erreurs, à protéger les données sensibles et à stocker les utilisateurs, les clients et les jetons dans une base de données durable pour un environnement de production.
Pour commencer
Pour commencer à intégrer OAuth2orize et IronPDF dans une application Node.js, vous devez d'abord utiliser OAuth2orize pour créer un serveur d'autorisation OAuth 2.0 et IronPDF pour mettre en œuvre la génération de PDF. Vous trouverez ci-dessous un didacticiel détaillé pour vous aider à y parvenir.
IronPDF for Node.jsest un package NPM qui facilite la création et la modification de fichiers PDF. Les développeurs peuvent ajouter des en-têtes et des filigranes, combiner plusieurs pages PDF, extraire du texte et des images de documents HTML et effectuer plusieurs autres tâches avec cet outil. L'API conviviale et la documentation complète d'IronPDF permettent aux développeurs de créer facilement et automatiquement des documents PDF de haute qualité. IronPDF dispose de toutes les fonctionnalités et capacités nécessaires pour améliorer les flux de travail documentaires et fournir d'excellentes expériences utilisateur dans divers contextes, notamment la création de factures, de rapports et de documentation.
Caractéristiques d'IronPDF
La conversion de HTML en PDF est un moyen rapide et facile de traiter tout type de texte HTML, y compris CSS et JavaScript.
Fusion de fichiers PDF : Combinez plusieurs documents PDF en un seul fichier PDF pour simplifier les tâches de gestion des documents.
Extraction de texte et d'image : Supprimez le texte et les images des fichiers PDF afin de pouvoir les utiliser pour une analyse plus poussée ou le traitement des données.
Filigrane : Vous pouvez appliquer des filigranes de texte ou d'image aux pages PDF à des fins d'image de marque ou de sécurité.
Inclure l'en-tête et le pied de page : Vous pouvez ajouter un message personnalisé ou des numéros de page aux en-têtes et pieds de page des documents PDF.
Installer IronPDF
Pour activer la fonctionnalité d'IronPDF, installez les packages nécessaires de Node.js en utilisant le gestionnaire de paquets node.
npm install @ironsoftware/ironpdf
Intégrer OAuth2orize Node.js à IronPDF pour Node.js
Ajoutez le code suivant dans le code du serveur d'autorisation OAuth 2.0 afin d'intégrer IronPDF pour la génération de PDF.
const IronPdf = require("@ironsoftware/ironpdf");
const document=IronPdf.PdfDocument;
var config=IronPdf.IronPdfGlobalConfig
// Protected resource endpoint to generate PDF
app.get('/generate-pdf', passport.authenticate('bearer', { session: false }), async (req, res) => {
const pdf = new IronPDF();
// Example HTML content for PDF generation
const htmlContent = `
<html>
<head>
<title>PDF Report</title>
</head>
<body>
<h1>Secure PDF Report</h1>
<p>This PDF was generated by Ironpdf.</p>
</body>
</html>
`;
try {
const pdf = (await document.fromHtml(htmlContent));
const pdfBuffer=await pdf.saveAsBuffer();
res.writeHead(200, {
'Content-Type': 'application/pdf',
'Content-Disposition': 'attachment; filename=report.pdf',
'Content-Length': pdfBuffer.length
});
res.end(pdfBuffer);
} catch (error) {
res.status(500).send('Error generating PDF');
}
});
const IronPdf = require("@ironsoftware/ironpdf");
const document=IronPdf.PdfDocument;
var config=IronPdf.IronPdfGlobalConfig
// Protected resource endpoint to generate PDF
app.get('/generate-pdf', passport.authenticate('bearer', { session: false }), async (req, res) => {
const pdf = new IronPDF();
// Example HTML content for PDF generation
const htmlContent = `
<html>
<head>
<title>PDF Report</title>
</head>
<body>
<h1>Secure PDF Report</h1>
<p>This PDF was generated by Ironpdf.</p>
</body>
</html>
`;
try {
const pdf = (await document.fromHtml(htmlContent));
const pdfBuffer=await pdf.saveAsBuffer();
res.writeHead(200, {
'Content-Type': 'application/pdf',
'Content-Disposition': 'attachment; filename=report.pdf',
'Content-Length': pdfBuffer.length
});
res.end(pdfBuffer);
} catch (error) {
res.status(500).send('Error generating PDF');
}
});
JAVASCRIPT
Le code fourni montre comment intégrer IronPDF pour la génération dynamique de PDF et construire un serveur d'autorisation OAuth 2.0 à l'aide d'OAuth2orize dans Node.js. Les dépendances essentielles telles que Express, Passport et UUID sont incluses dans la configuration. Pour des raisons de simplicité, les utilisateurs et les clients sont enregistrés dans des tableaux en mémoire ; cependant, une base de données doit être utilisée dans un environnement de production.
Le code gère la validation du client et l'authentification de l'utilisateur en définissant de nombreuses techniques Passport. Les codes d'autorisation, dans lesquels les utilisateurs permettent aux clients d'accéder aux ressources en leur nom, sont gérés par OAuth2orize. Le client peut échanger un code d'autorisation contre un jeton d'accès après en avoir obtenu un. Seules les requêtes authentifiées sont autorisées à créer des PDF grâce à la technique du jeton Bearer utilisée pour protéger le point de terminaison /generate-pdf.
Le contenu HTML est converti par le point final à l'aide d'IronPDF en un document de typeDocument PDFla traduction est ensuite renvoyée au client. Cette intégration fournit un exemple de l'utilisation d'OAuth 2.0 pour sécuriser les points d'extrémité de l'API et fournir un contenu dynamique de manière évolutive et sûre.
Conclusion
En conclusion, l'utilisation d'OAuth2orize et d'IronPDF dans une application Node.js aboutit de manière forte et sûre à la production de PDF de bonne qualité. Les données sensibles sont protégées car OAuth2orize offre une forte autorisation OAuth 2.0, garantissant que seuls les utilisateurs autorisés et authentifiés peuvent utiliser les services de création de PDF. IronPDF, quant à lui, permet de convertir simplement et efficacement des informations HTML en fichiers PDF de qualité professionnelle.
Cette intégration offre aux développeurs une solution évolutive et simple à mettre en œuvre, tout en améliorant la sécurité, la flexibilité et l'expérience utilisateur. Grâce à ces technologies, les développeurs peuvent produire des applications conviviales, fiables, sûres et conformes aux normes de sécurité et de fonctionnalité actuelles.
En ajoutant les technologies IronPDF et Iron Software à votre pile de développement d'applications d'entreprise, IronPDF peut garantir des solutions logicielles haut de gamme riches en fonctionnalités pour les clients et les utilisateurs finaux. En outre, les initiatives, les systèmes dorsaux et l'optimisation des processus seront facilités par cette base solide. IronPDFest disponible pour $749. Ces technologies sont une excellente option pour les projets de développement logiciel modernes en raison de leur documentation exhaustive, de leur communauté de développeurs en ligne active et de leurs mises à jour régulières.
Avant de devenir ingénieur logiciel, Kannapat a obtenu un doctorat en ressources environnementales à l'université d'Hokkaido au Japon. Tout en poursuivant ses études, Kannapat est également devenu membre du Vehicle Robotics Laboratory, qui fait partie du Department of Bioproduction Engineering (département d'ingénierie de la bioproduction). En 2022, il a mis à profit ses compétences en C# pour rejoindre l'équipe d'ingénieurs d'Iron Software, où il se concentre sur IronPDF. Kannapat apprécie son travail car il apprend directement auprès du développeur qui écrit la majeure partie du code utilisé dans IronPDF. Outre l'apprentissage par les pairs, Kannapat apprécie l'aspect social du travail chez Iron Software. Lorsqu'il n'écrit pas de code ou de documentation, Kannapat peut généralement être trouvé en train de jouer sur sa PS5 ou de revoir The Last of Us.
< PRÉCÉDENT mimosa NPM (Comment ça marche pour les développeurs)
SUIVANT > Prettier - NPM (Comment ça marche pour les développeurs)
Vous avez une question ? Prendre contact avec notre équipe de développement.
Vous avez une question ? Contactez notre équipe de développement.
Commencez GRATUITEMENT
Aucune carte de crédit n'est requise
Test dans un environnement réel
Testez en production sans filigranes. Fonctionne là où vous en avez besoin.
Produit entièrement fonctionnel
Obtenez 30 jours de produit entièrement fonctionnel. Faites-le fonctionner en quelques minutes.
assistance technique 24/5
Accès complet à notre équipe d'ingénieurs pendant la période d'essai du produit
Obtenez votre clé d'essai de 30 jours gratuite instantanément.
Aucune carte de crédit ou création de compte n'est nécessaire
Le formulaire d'essai a été soumis avec succès.
Votre clé d'essai devrait être dans l'e-mail. Si ce n'est pas le cas, veuillez contacter support@ironsoftware.com
Des millions d'ingénieurs dans le monde entier lui font confiance
Réservez une démo en direct gratuite
Réservez une démonstration personnelle de 30 minutes.
Pas de contrat, pas de détails de carte, pas d'engagements.
Voici ce à quoi vous pouvez vous attendre :
Une démonstration en direct de notre produit et de ses principales fonctionnalités
Obtenez des recommandations de fonctionnalités spécifiques au projet
Toutes vos questions trouvent réponse pour vous assurer de disposer de toutes les informations dont vous avez besoin. (Aucun engagement de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre démo en direct gratuite
Fiable par plus de 2 millions d'ingénieurs dans le monde entier