了解IronPDF中的Kerberos
This article was translated from English: Does it need improvement?
Translated
View the article in English
如何使用Kerberos身份驗證讓UrlToPdf工作?
要在IronPDF的UrlToPdf中使用Kerberos身份驗證,您應該在渲染設定中設置使用者名和密碼。 您可以參考IronPDF文件獲得更多詳情:IronPdf.ChromeHttpLoginCredentials。
我們建議使用System.Net.Http.HttpClient下載HTML內容,然後您可以進行渲染。 這種方式允許您在IronPDF處理內容之前處理HTTP請求,包括那些需要身份驗證的請求。
這裡是一個關於使用Kerberos下載頁面的線上指南:System.Net.Http.HttpClient如何選擇身份驗證型別?。 這個StackOverflow連結詳細討論了如何使用HttpClient實現身份驗證。
為了解析並確保HTML中的所有必要資源都已下載,您可以考慮使用HTML Agility Pack。 這個.NET程式庫有助於有效地操作和查詢HTML文件。
// Example: Using HttpClient with Kerberos Authentication
// Import the necessary namespaces
using System;
using System.Net;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
namespace KerberosAuthenticationExample
{
class Program
{
static async Task Main(string[] args)
{
// Create an instance of HttpClient
HttpClientHandler handler = new HttpClientHandler
{
// Automatically use default network credentials
UseDefaultCredentials = true // Enables Windows authentication (e.g., Kerberos)
};
using HttpClient httpClient = new HttpClient(handler);
try
{
// Send a GET request to the desired URL
HttpResponseMessage response = await httpClient.GetAsync("https://your-secure-url.com");
// Ensure the request was successful
response.EnsureSuccessStatusCode();
// Read and display the response body
string responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseBody);
// If needed, render the HTML to PDF with IronPDF here
// IronPdf.HtmlToPdf renderer = new IronPdf.HtmlToPdf();
// renderer.RenderHtmlAsPdf(responseBody).SaveAs("output.pdf");
}
catch (HttpRequestException e)
{
// Handle any error responses from the server or connection issues
Console.WriteLine("\nException Caught!");
Console.WriteLine($"Message :{e.Message}");
}
}
}
}
// Example: Using HttpClient with Kerberos Authentication
// Import the necessary namespaces
using System;
using System.Net;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
namespace KerberosAuthenticationExample
{
class Program
{
static async Task Main(string[] args)
{
// Create an instance of HttpClient
HttpClientHandler handler = new HttpClientHandler
{
// Automatically use default network credentials
UseDefaultCredentials = true // Enables Windows authentication (e.g., Kerberos)
};
using HttpClient httpClient = new HttpClient(handler);
try
{
// Send a GET request to the desired URL
HttpResponseMessage response = await httpClient.GetAsync("https://your-secure-url.com");
// Ensure the request was successful
response.EnsureSuccessStatusCode();
// Read and display the response body
string responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseBody);
// If needed, render the HTML to PDF with IronPDF here
// IronPdf.HtmlToPdf renderer = new IronPdf.HtmlToPdf();
// renderer.RenderHtmlAsPdf(responseBody).SaveAs("output.pdf");
}
catch (HttpRequestException e)
{
// Handle any error responses from the server or connection issues
Console.WriteLine("\nException Caught!");
Console.WriteLine($"Message :{e.Message}");
}
}
}
}
' Example: Using HttpClient with Kerberos Authentication
' Import the necessary namespaces
Imports Microsoft.VisualBasic
Imports System
Imports System.Net
Imports System.Net.Http
Imports System.Net.Http.Headers
Imports System.Threading.Tasks
Namespace KerberosAuthenticationExample
Friend Class Program
Shared Async Function Main(ByVal args() As String) As Task
' Create an instance of HttpClient
Dim handler As New HttpClientHandler With {.UseDefaultCredentials = True}
Using httpClient As New HttpClient(handler)
Try
' Send a GET request to the desired URL
Dim response As HttpResponseMessage = Await httpClient.GetAsync("https://your-secure-url.com")
' Ensure the request was successful
response.EnsureSuccessStatusCode()
' Read and display the response body
Dim responseBody As String = Await response.Content.ReadAsStringAsync()
Console.WriteLine(responseBody)
' If needed, render the HTML to PDF with IronPDF here
' IronPdf.HtmlToPdf renderer = new IronPdf.HtmlToPdf();
' renderer.RenderHtmlAsPdf(responseBody).SaveAs("output.pdf");
Catch e As HttpRequestException
' Handle any error responses from the server or connection issues
Console.WriteLine(vbLf & "Exception Caught!")
Console.WriteLine($"Message :{e.Message}")
End Try
End Using
End Function
End Class
End Namespace
$vbLabelText
$csharpLabel
關鍵點:
- HttpClient和HttpClientHandler:使用
UseDefaultCredentials = true允許使用當前使用者憑證進行Kerberos身份驗證。 - 錯誤處理:實現try-catch塊來管理HTTP請求過程中的例外。
- HTML渲染:一旦HTML被獲取,必要時使用IronPDF將內容渲染成PDF。
準備開始了嗎?
Nuget 下載 20,296,129 | 版本: 2026.7 剛剛發布

