IRONSOFTWAREHOME
PRODUKTVERGLEICHE

Erkunden Sie die besten PDF-zu-Bild-Alternativen zu PDFsharp

Curtis Chau
Curtis Chau
Updated: 5. Juli 2026

Die meisten HTML-zu-PDF-Jobs scheitern am gleichen Grund: Die Seite sieht nur dann richtig aus, wenn ein Benutzer angemeldet ist. IronPDF steuert eine Chrome-Engine, sodass es sieht, was ein nicht authentifizierter Browser sehen würde, einen Anmeldebildschirm oder eine leere Hülle, bis Sie ihm die richtigen Cookies übergeben. Drei Teile der API lösen dies, die RequestContext Eigenschaft, die ApplyCookies Methode und das CustomCookies Wörterbuch. Hier ist, wo jedes einzelne passt, mit einem passenden Snippet.

Rechnungen und Abrechnungen hinter der Anmeldung rendern

Die Rechnung eines Kunden befindet sich auf einer sitzungsbasierten Route, und Ihre Anwendung hält bereits deren Sitzung. Geben Sie diese Sitzungs-ID direkt über CustomCookies weiter:

using IronPdf;
using System.Collections.Generic;

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.RequestContext = IronPdf.Rendering.RequestContexts.Global;
renderer.RenderingOptions.CustomCookies = new Dictionary<string, string>
{
    { "ASP.NET_SessionId", sessionId }
};

renderer.RenderUrlAsPdf("https://app.example.com/account/invoices/1042")
        .SaveAs("invoice-1042.pdf");

Für grundlegende oder Windows-Authentifizierung verwenden Sie stattdessen ApplyCookies. Es meldet sich mit den angegebenen Anmeldeinformationen an der URL an und erfasst die resultierenden Cookies in den globalen Kontext, den das folgende Rendering dann wiederverwendet:

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.RequestContext = IronPdf.Rendering.RequestContexts.Global;

var credentials = new ChromeHttpLoginCredentials
{
    NetworkUsername = "svc_reports",
    NetworkPassword = "your_password"
};

string uri = "https://app.example.com/account/invoices/1042";
renderer.ApplyCookies(uri, credentials);

renderer.RenderUrlAsPdf(uri).SaveAs("invoice-1042.pdf");

Token-basierte und Drittanbieter-Authentifizierung

Moderne Apps lehnen sich selten auf einfache HTTP-Anmeldeinformationen. Sie authentifizieren sich mit JWTs, OAuth oder SAML, oft speichert das Ergebnis in einem Cookie. Da CustomCookies jedes Schlüssel-Wert-Paar akzeptiert, kann ein Bearer-Token oder ein Identity-Provider-Cookie direkt eingesetzt werden:

renderer.RenderingOptions.CustomCookies = new Dictionary<string, string>
{
    { "auth_token", jwt },
    { "refresh_token", refreshToken }
};

Personalisierte und lokalisierte Dokumente

Cookies tragen oft Locale-, Währungs- oder Feature-Flag-Status. Reichen Sie sie weiter, und das PDF passt zu dem, was dieser spezifische Benutzer sieht, in der richtigen Sprache und Währung:

renderer.RenderingOptions.CustomCookies = new Dictionary<string, string>
{
    { "locale", "en-AU" },
    { "currency", "AUD" },
    { "feature_newLayout", "on" }
};

Batch-Erstellung, die eine Sitzung teilt

Um viele PDFs für denselben authentifizierten Benutzer nacheinander zu generieren, setzen Sie RequestContext auf Global. Der Browserzustand, einschließlich Cookies, bleibt über Render hinweg erhalten, sodass Sie sich einmal anmelden, anstatt pro Dokument:

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.RequestContext = IronPdf.Rendering.RequestContexts.Global;
renderer.RenderingOptions.CustomCookies = new Dictionary<string, string>
{
    { "ASP.NET_SessionId", sessionId }
};

foreach (var id in invoiceIds)
{
    renderer.RenderUrlAsPdf($"https://app.example.com/invoices/{id}")
            .SaveAs($"invoice-{id}.pdf");
}

Konkurrierendes Rendering ohne Cookies-Bleeding

Das gegenteilige Szenario wiegt ebenso schwer. Ein Dienst, der für viele verschiedene Benutzer gleichzeitig rendert, benötigt Isolated Kontext, der jede Rendering-Operation einen sauberen Status gibt und verhindert, dass die Sitzung eines Benutzers in das Dokument eines anderen überläuft. Geben Sie jedem Thread seinen eigenen Renderer:

using System.Threading.Tasks;

Parallel.ForEach(jobs, job =>
{
    var renderer = new ChromePdfRenderer();
    renderer.RenderingOptions.RequestContext = IronPdf.Rendering.RequestContexts.Isolated;
    renderer.RenderingOptions.CustomCookies = new Dictionary<string, string>
    {
        { "ASP.NET_SessionId", job.SessionId }
    };

    renderer.RenderUrlAsPdf(job.Url).SaveAs(job.OutputPath);
});

Die Methode dem Job anpassen

Verwenden Sie Standard-Cookies (ApplyCookies) für grundlegende HTTP-Authentifizierung, Windows-Authentifizierung und einfache Sitzungen. Verwenden Sie CustomCookies für Tokens, multi-parameter Sitzungen, Drittanbieter und gespeicherte Präferenzen. Wählen Sie Global, um Zustand über Renderings hinweg zu teilen und Isolated, um sie getrennt zu halten; Auto ist standardmäßig isoliert und wechselt zu global, sobald ApplyCookies aufgerufen wird.

Die meisten Fehler gruppieren sich um abgelaufene Tokens, nicht übereinstimmende Cookie-Domänen, die Behandlung von sicheren Cookies auf HTTPS-URLs und SameSite-Richtlinien bei Cross-Origin-Anfragen. Bestätigen Sie die Gültigkeit der Cookies vor dem Rendern und verlassen Sie sich auf Global, wenn Sitzungen bestehen bleiben müssen.

Wenn Cookies der gesamte Job sind

Cookies sind keine Randfälle in der PDF-Erzeugung. Wenn Sie es richtig machen, versenden Sie ein brauchbares Dokument; machen Sie es falsch, und Sie versenden einen Screenshot eines Anmeldeformulars.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender Handbücher.

...
Weiterlesen

Verwandte Artikel

Key in blue circle

Holen Sie sich sofort Ihren kostenlosen 30-Tage-Testschlüssel.

Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.

bullet_checkedIhr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Buchen Sie Ihre kostenlose Live-Demo
Booking Badge

Von Millionen von Ingenieur*innen weltweit vertraut

Kundenlogos von Iron Software
Erhalten Sie Ihre unverbindliche Beratung
Füllen Sie das Formular unten aus oder senden Sie eine E-Mail an sales@ironsoftware.com
Ihre Daten werden immer vertraulich behandelt.
Von Millionen von Ingenieur*innen weltweit vertraut
Kundenlogos von Iron Software
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.