IRONSOFTWAREHOME
제품 비교

PDFsharp의 이미지 변환을 위한 최고의 PDF 대안을 탐색하세요

Curtis Chau
Curtis Chau
Updated: 2026년 7월 5일

대부분의 HTML-to-PDF 작업은 같은 이유로 깨집니다: 페이지는 사용자가 로그인한 후에만 올바르게 보입니다. IronPDF는 Chrome 엔진으로 구동되므로 인증되지 않은 브라우저가 보는 것을 볼 수 있으며, 적합한 쿠키를 전달할 때까지 로그인 화면 또는 빈 쉘을 봅니다. 세 가지 API 구성 요소는 이를 해결합니다. RequestContext 속성, ApplyCookies 메서드, CustomCookies 사전. 각 항목이 어디에 맞는지, 그리고 일치하는 스니펫이 포함된 곳이 여기입니다.

로그인 후 세금형식과 성명 렌더링

고객의 송장은 세션 보호된 경로에 있으며, 어플리케이션이 이미 해당 세션을 보유합니다. 세션 ID를 CustomCookies를 통해 바로 전달하세요:

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");

기본 인증 또는 Windows 인증의 경우, 대신 ApplyCookies을 참조하세요. URL에서 제공된 자격 증명으로 로그인하고, 결과 쿠키를 글로벌 컨텍스트에 캡처합니다. 그러면 다음 렌더링이 이를 재사용합니다.

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");

토큰 기반 및 제3자 인증

현대 애플리케이션은 단순 HTTP 자격 증명에 거의 의존하지 않습니다. 대부분 JWT, OAuth 또는 SAML로 인증하며, 종종 결과를 쿠키에 저장합니다. CustomCookies이(가) 모든 키-값 쌍을 수용하므로, 베어러 토큰 또는 아이덴티티 공급자 쿠키를 바로 사용할 수 있습니다:

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

개인화 및 현지화된 문서

쿠키는 종종 로케일, 통화 또는 기능 상태를 담고 있습니다. 이를 전달하고, PDF는 특정 사용자가 보는 것과 일치하게, 올바른 언어 및 통화로 표시됩니다:

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

한 세션을 공유하는 일괄 생성

같은 인증된 사용자에 대해 여러 PDF를 순차적으로 생성하려면, RequestContext을(를) Global로 설정하십시오. 브라우저 상태, 쿠키 포함, 렌더링 간에 지속되므로 문서당 인증이 아닌 한 번만 인증합니다.

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");
}

쿠키 누수가 없는 동시 렌더링

반대 시나리오도 똑같이 중요합니다. 여러 다른 사용자를 동시에 렌더링하는 서비스는 Isolated 컨텍스트가 필요하며, 이는 각 렌더링에 깨끗한 상태를 제공하고 한 사용자의 세션이 다른 문서로 누출되는 것을 방지합니다. 각 스레드에 자신의 렌더러를 제공하세요:

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);
});

작업에 맞는 방법 일치시키기

기본 HTTP 인증, Windows 인증 및 간단한 세션을 위해 표준 쿠키(ApplyCookies)를 사용하세요. 토큰, 다중 매개변수 세션, 타사 제공자 및 저장된 환경설정과 함께 CustomCookies을 참조하세요. 렌더링 간 상태를 공유하려면 Global, 이를 분리하려면 Isolated을 선택하세요; Auto은 기본적으로 격리되어 있으며, ApplyCookies가 호출되면 글로벌로 전환됩니다.

대부분의 실패는 만료된 토큰, 일치하지 않는 쿠키 도메인, HTTPS URL의 보안 쿠키 처리, 및 교차 출처 요청에 대한 SameSite 정책 주변에 몰려 있습니다. 렌더링 전에 쿠키 유효성을 확인하고 세션이 지속되어야 하는 경우 Global에 의존하세요.

쿠키가 모든 작업인 경우

PDF 생성에서 쿠키는 경계 사례가 아닙니다. 이를 정확히 처리하면 사용 가능한 문서를 제공하며; 잘못 처리하면 로그인 양식의 스크린샷을 제공합니다.

Curtis Chau
기술 문서 작성자

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.

...
더 읽어보기

관련 기사

Key in blue circle

무료 30일 체험 키를 즉시 받으세요.

제한 없음. 100% 무제한 이용. 신용카드 불필요.

bullet_checked신용카드나 계정 생성은 필요하지 않습니다.제한 없음. 100% 무제한 이용. 신용카드 불필요.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
무료 라이브 데모를 예약하세요
Booking Badge

전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.

Iron Software의 고객 로고
부담 없는 무료 상담을 받아보세요
아래 양식을 작성하시거나 sales@ironsoftware.com으로 이메일을 보내주세요.
고객님의 정보는 항상 비밀로 유지됩니다.
전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.
Iron Software의 고객 로고
지금 바로 30일 무료 체험판 키를 받으세요.
신용카드나 계정 생성은 필요하지 않습니다.