透かしなしで本番環境でテストしてください。
必要な場所で動作します。
30日間、完全に機能する製品をご利用いただけます。
数分で稼働させることができます。
製品トライアル期間中にサポートエンジニアリングチームへの完全アクセス
基本的なスタンドアロンWebサーバーを構築するためのC#の最も便利なツールの1つは、HttpListenerクラスです。 それはSystem.Net名前空間に含まれており、クライアントからのHTTPリクエストを受信および返信するためのメソッドを提供します。 これは、デスクトップ・プログラムでウェブベースのコミュニケーションを管理したり、軽量のオンライン・サービスを構築したりする場合に特に役立つ。
.NETライブラリPDF処理用のIronPDFは、PDFファイルからコンテンツを生成、修正、抽出するために使用されます。 HTMLからPDFを作成したり、既存のPDFを異なるフォーマットに変換したり、プログラミングを使ってPDFを変更したりするための包括的な機能を提供します。
開発者はHttpListenerとIronPDFを組み合わせることで、HTTPリクエストに応答してPDFドキュメントを動的に生成して提供するWebサービスを設計することができる。 ユーザーの入力やその他の動的なデータに応じてリアルタイムでPDFを生成する必要があるアプリケーションには、非常に役立つと思われます。
HttpListener ドキュメントは、C#で簡単なHTTPサーバーを設計するための柔軟なクラスで、.NET FrameworkのSystem.Net名前空間にあります。 その目的は、顧客から入ってくるHTTPリクエストを受け取り、それを処理し、適切な情報を返信することである。 このクラスは、IISのようなフル機能のウェブ・サーバーを必要としないため、軽量なスタンドアロンのウェブ・サービスや、ウェブベースのコミュニケーション機能をデスクトップ・プログラムに統合するのに最適なオプションです。
開発者は HttpListener を使うことで、サーバがリッスンすべきアドレスを決定するための URI プレフィックスを設定することができます。 リスナーが開始されると、入ってくるすべてのリクエストに応答し、 HttpListenerContext を使ってリクエストオブジェクトとレスポンスオブジェクトにアクセスする。 この設定により、アプリケーションの要件に特化したHTTPリクエスト処理ロジックを作成することが可能になる。 HttpListenerの使いやすさと適応性は、高速で効果的で設定可能なHTTPサーバーを必要とする状況で特に役立ちます。 HttpListener は、テスト用のローカルサーバーの開発、オンラインサービスのプロトタイピング、またはデスクトップアプリへの通信プロトコルの統合に、オーバーヘッドのない安定したソリューションを提供します。
C#のHttpListenerは、HTTPサーバーの構築に効果的なツールです。 必要不可欠な要素は以下の通りだ:
使いやすさ: HttpListenerは、プログラマーが基本的なHTTPサーバーを構築するために少ないコードで済む、使いやすいライブラリです。
URI プレフィックス: 複数の URI プレフィックスを指定することで、様々なエンドポイントの処理に柔軟性を持たせ、サーバーが関連するクエリにのみ反応することを保証します。
非同期操作: HttpListener は非同期メソッドをサポートしており、メインスレッドを中断することなく効率的に多数のリクエストを同時に処理できるため、サーバーのスケーラビリティと応答性を向上させます。
認証: HttpListener の Basic、Digest、NTLM、統合 Windows 認証など、多くの認証技術のサポートを使用して、必要に応じてエンドポイントを保護できます。
HTTPSサポート: HttpListenerはHTTPSリクエストに応答するように設定でき、たとえば安全なクライアント-サーバーデータ通信を可能にします。
リクエストおよびレスポンスの処理: HttpListener を使用すると、新しいヘッダー、ステータスコード、コンテンツタイプを追加してレスポンスを変更し、リクエストデータ、ヘッダー、パラメータを読み取ることで、リクエストおよびレスポンスプロセスを完全に制御できます。
リスナー設定: HttpListenerは、サーバーの動作を調整するためにリスナー固有の設定オプションを提供します。これには、証明書管理(HTTPS用)、タイムアウト、その他のパラメーターが含まれます。
ロギングと診断: 監視とトラブルシューティングを容易にする包括的なリクエストおよびレスポンス情報を提供するロギングと診断を可能にします。
互換性: 他の.NETコンポーネントやライブラリとうまく機能するため、現在の.NETサービスおよびアプリケーションとのスムーズな統合が可能です。
クロスプラットフォーム: HttpListenerはWindows、Linux、macOSと互換性があり、.NET Coreおよび.NET 5+で利用可能です。これにより、クロスプラットフォーム開発の柔軟性が提供されます。
C# で HttpListener を作成し設定するには、複数のステップがあります。 HTTPリクエストを処理するためのHttpListenerの設定に関する広範なチュートリアルは、以下で見ることができます。
新しい .NET プロジェクトを作成する
コマンドプロンプト、コンソール、またはターミナルを開く。
新しく作成した.NETコンソール・アプリケーションを起動するには、次のように入力します。
dotnet new console -n HttplistenerExample
cd HttplistenerExample
dotnet new console -n HttplistenerExample
cd HttplistenerExample
IRON VB CONVERTER ERROR developers@ironsoftware.com
HttpListener インスタンスを作成する
まず、HttpListenerクラスのインスタンスを作成する。
URI プレフィックスを構成する
URIプレフィックスを追加して、リスナーが処理すべきアドレスを指定する。
リスナーを開始する
HttpListenerを開始し、HTTPリクエストのリッスンを開始する。
受信リクエストを処理する
リクエストを処理し、レスポンスを送信するループを作成する。
リスナーを停止する
HttpListener が不要になったときに、グレースフルに停止します。
ここに、これらのステージのほんの一例、ほんの一例のリクエストを紹介しよう:
using System;
using System.Net;
using System.Text;
class Program
{
public static string url="http://localhost:8080/";
public static HttpListener listener;
public static void Main(string[] args)
{
// Step 1: Create an HttpListener instance
listener = new HttpListener();
// Step 2: Configure URI prefixes
listener.Prefixes.Add(url);
// Step 3: Start the listener
listener.Start();
Console.WriteLine("Listening for requests on "+url);
// Step 4: Handle incoming requests
// Wait for an incoming request
while (true)
{
// getcontext method blocks
HttpListenerContext context = listener.GetContext();
HttpListenerRequest request = context.Request;
// Process the request (e.g., log the request URL with or without query string)
Console.WriteLine($"Received request for {request.Url}");
// Create a response
HttpListenerResponse response = context.Response;
// add response info
string responseString = "<html><body>Hello, world!</body></html>";
byte[] buffer = Encoding.UTF8.GetBytes(responseString);
// Set the content length and type
response.ContentLength64 = buffer.Length;
response.ContentType = "text/html";
// Write the response to the output stream
using (System.IO.Stream output = response.OutputStream)
{
output.Write(buffer, 0, buffer.Length);
}
// Close the response
response.Close();
}
// Step 5: Stop the listener (this code is unreachable in the current loop structure)
// listener.Stop();
}
}
using System;
using System.Net;
using System.Text;
class Program
{
public static string url="http://localhost:8080/";
public static HttpListener listener;
public static void Main(string[] args)
{
// Step 1: Create an HttpListener instance
listener = new HttpListener();
// Step 2: Configure URI prefixes
listener.Prefixes.Add(url);
// Step 3: Start the listener
listener.Start();
Console.WriteLine("Listening for requests on "+url);
// Step 4: Handle incoming requests
// Wait for an incoming request
while (true)
{
// getcontext method blocks
HttpListenerContext context = listener.GetContext();
HttpListenerRequest request = context.Request;
// Process the request (e.g., log the request URL with or without query string)
Console.WriteLine($"Received request for {request.Url}");
// Create a response
HttpListenerResponse response = context.Response;
// add response info
string responseString = "<html><body>Hello, world!</body></html>";
byte[] buffer = Encoding.UTF8.GetBytes(responseString);
// Set the content length and type
response.ContentLength64 = buffer.Length;
response.ContentType = "text/html";
// Write the response to the output stream
using (System.IO.Stream output = response.OutputStream)
{
output.Write(buffer, 0, buffer.Length);
}
// Close the response
response.Close();
}
// Step 5: Stop the listener (this code is unreachable in the current loop structure)
// listener.Stop();
}
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
含まれているC#コードは、基本的なHTTPサーバーとして機能するHttpListenerの作成と設定のプロセスを説明します。 リクエストを処理するアドレスを定義するために、最初にHttpListenerオブジェクトをインスタンス化し、URIプレフィックス(http://localhost:8080/)を追加します。 次に、Startメソッドを使用してリスナーを開始する。 新しいHTTPリクエストをリッスンし続けるために、不定のwhileループを利用する。 GetContext はループ中にリクエストを待ち、リクエストオブジェクトとレスポンスオブジェクトを含む HttpListenerContext オブジェクトを返します。
リクエストURLを記録した後、HTMLとレスポンスのオブジェクトが作成され、バイト配列に変換され、レスポンス出力ストリームに送られる。 クライアントにレスポンスを返す前に、レスポンスのタイプと期間が適切に指定される。 ループは、サーバーがリクエストの処理を決して止めないことを意味する。 リスナーのコンソールへのリクエストを停止するには、haltメソッドを呼び出す必要があるが、この場合は無限ループのために呼び出すことができない。
IronPDFは.NETでドキュメントやレポートの作成に必要な高品質のPDFを作成、変更するのに役立ちます。 HttpListenerの内蔵HTTPサーバー機能により、小規模なアプリやサービスでWebリクエストを管理することができます。 どちらのツールも、それぞれの分野で.NETアプリの有用性と速度を向上させます。 C#のHttpListenerを使い始め、IronPDFと統合してPDFを作成するには、以下の手順に従ってください:
機能豊富な.NETライブラリIronPDF for C#は、C#プログラムでPDFドキュメントの作成、読み込み、編集を可能にします。 このユーティリティを使えば、開発者はHTML、CSS、JavaScriptの素材を、高品質で印刷に適したPDFに素早く変換することができます。 最も重要なタスクには、ヘッダーとフッターの追加、PDFの分割と結合、文書への透かしの追加、HTMLからPDFへの変換などがあります。 IronPDFは.NET Frameworkと.NET Coreの両方をサポートしているので、様々なアプリケーションに役立ちます。
PDFは使いやすく、多くの情報が含まれているため、開発者は簡単に製品に含めることができます。 IronPDFは複雑なデータレイアウトやフォーマットを扱うことができるため、出力として生成されるPDFはクライアントや元のHTMLテキストによく似ています。
IronPDFは、元のレイアウトとスタイルを正確に保持してHTMLからPDFへの変換に優れています。 それは、レポート、請求書、およびドキュメントなどのWebベースのコンテンツからPDFを作成するのに最適です。 IronPDFはHTMLファイル、URL、生のHTML文字列をサポートしており、簡単に高品質なPDFドキュメントを生成します。
using IronPdf;
class Program
{
static void Main(string[] args)
{
var renderer = new ChromePdfRenderer();
// 1. Convert HTML String to PDF
var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");
// 2. Convert HTML File to PDF
var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");
// 3. Convert URL to PDF
var url = "http://ironpdf.com"; // Specify the URL
var pdfFromUrl = renderer.RenderUrlAsPdf(url);
pdfFromUrl.SaveAs("URLToPDF.pdf");
}
}
using IronPdf;
class Program
{
static void Main(string[] args)
{
var renderer = new ChromePdfRenderer();
// 1. Convert HTML String to PDF
var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");
// 2. Convert HTML File to PDF
var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");
// 3. Convert URL to PDF
var url = "http://ironpdf.com"; // Specify the URL
var pdfFromUrl = renderer.RenderUrlAsPdf(url);
pdfFromUrl.SaveAs("URLToPDF.pdf");
}
}
Imports IronPdf
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim renderer = New ChromePdfRenderer()
' 1. Convert HTML String to PDF
Dim htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>"
Dim pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent)
pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf")
' 2. Convert HTML File to PDF
Dim htmlFilePath = "path_to_your_html_file.html" ' Specify the path to your HTML file
Dim pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath)
pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf")
' 3. Convert URL to PDF
Dim url = "http://ironpdf.com" ' Specify the URL
Dim pdfFromUrl = renderer.RenderUrlAsPdf(url)
pdfFromUrl.SaveAs("URLToPDF.pdf")
End Sub
End Class
HTMLからのPDF生成
JavaScript、HTML、CSSをPDFに変換。 IronPDFはメディアクエリとレスポンシブデザインをサポートしています。 最新のWeb標準をサポートしているため、PDFのレポート、請求書、文書をHTMLやCSSで動的に装飾するのに便利です。
PDF編集
既存のPDFにテキスト、画像、その他のコンテンツを追加することができます。 IronPDFを使用することで、開発者はPDFファイルからテキストや画像を取り出したり、多数のPDFを1つのファイルにまとめたり、PDFファイルを複数の別々のドキュメントに分割したり、PDFページに透かしや注釈、ヘッダー、フッターを含めることができます。
PDF変換
Word、Excel、画像ファイルなど、さまざまなファイル形式をPDFに変換。 IronPDFはPDFから画像(PNG、JPEGなど)への変換もサポートしています。
パフォーマンスと信頼性
高い性能と信頼性は、産業環境において望まれる設計品質である。 開発者は大きな文書セットを簡単に管理できる。
.NETプロジェクトでPDFを扱うために必要なツールを得るには、IronPDFパッケージをインストールしてください。
dotnet add package IronPdf
dotnet add package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'dotnet add package IronPdf
これはIronPDFを使用してPDFドキュメントを作成し、HttpListenerをセットアップして提供する方法を示す包括的な例です:
using System;
using System.Net;
using System.Text;
using IronPdf;
class Program
{
static void Main(string[] args)
{
// Step 1: Create an HttpListener instance
HttpListener listener = new HttpListener();
// Step 2: Configure URI prefixes
listener.Prefixes.Add("http://localhost:8080/");
// Step 3: Start the listener
listener.Start();
Console.WriteLine("Listening for requests on http://localhost:8080/");
// Step 4: Handle incoming requests
while (true)
{
// Wait for an incoming request
HttpListenerContext context = listener.GetContext();
HttpListenerRequest request = context.Request;
// Process the request (e.g., log the request URL)
Console.WriteLine($"Received request for {request.Url}");
// Generate PDF using IronPDF
var htmlContent = "<h1>PDF generated by IronPDF</h1><p>This is a sample PDF document.</p>";
var pdf = IronPdf.HtmlToPdf.StaticRenderHtmlAsPdf(htmlContent);
// Get the PDF as a byte array
byte[] pdfBytes = pdf.BinaryData;
// Create a response
HttpListenerResponse response = context.Response;
// Set the content length and type
response.ContentLength64 = pdfBytes.Length;
response.ContentType = "application/pdf";
// Write the PDF to the response output stream
using (System.IO.Stream output = response.OutputStream)
{
output.Write(pdfBytes, 0, pdfBytes.Length);
}
// Close the response
response.Close();
}
// Step 5: Stop the listener (this code is unreachable in the current loop structure)
// listener.Stop();
}
}
using System;
using System.Net;
using System.Text;
using IronPdf;
class Program
{
static void Main(string[] args)
{
// Step 1: Create an HttpListener instance
HttpListener listener = new HttpListener();
// Step 2: Configure URI prefixes
listener.Prefixes.Add("http://localhost:8080/");
// Step 3: Start the listener
listener.Start();
Console.WriteLine("Listening for requests on http://localhost:8080/");
// Step 4: Handle incoming requests
while (true)
{
// Wait for an incoming request
HttpListenerContext context = listener.GetContext();
HttpListenerRequest request = context.Request;
// Process the request (e.g., log the request URL)
Console.WriteLine($"Received request for {request.Url}");
// Generate PDF using IronPDF
var htmlContent = "<h1>PDF generated by IronPDF</h1><p>This is a sample PDF document.</p>";
var pdf = IronPdf.HtmlToPdf.StaticRenderHtmlAsPdf(htmlContent);
// Get the PDF as a byte array
byte[] pdfBytes = pdf.BinaryData;
// Create a response
HttpListenerResponse response = context.Response;
// Set the content length and type
response.ContentLength64 = pdfBytes.Length;
response.ContentType = "application/pdf";
// Write the PDF to the response output stream
using (System.IO.Stream output = response.OutputStream)
{
output.Write(pdfBytes, 0, pdfBytes.Length);
}
// Close the response
response.Close();
}
// Step 5: Stop the listener (this code is unreachable in the current loop structure)
// listener.Stop();
}
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
含まれているC#コードは、IronPDFのHTMLからPDFへの変換をHttpListenerと接続して動的にPDFドキュメントを生成および配信する方法と、基本的なHTTPメソッドサーバーとして機能するようにセットアップする方法を示しています。 最初のステップは、HttpListenerのインスタンスを作成し、HTTPリクエストをhttp://localhost:8080/。
リスナーを開始した後、エンドレスループが着信リクエストの処理を引き継ぐ。 このコードはリクエストごとにリクエストURLをログし、IronPDFを使ってHTMLテキストからPDFドキュメントを作成し、そのPDFをバイト配列に変換します。 次に、レスポンスは適切なMIMEタイプ(application/pdf)とコンテンツの長さで設定されます。
最初のレスポンスストリームは、レスポンス出力ストリームにPDFバイト配列を書き込んだ後、それをクライアントに送り返すために閉じられます。 こ の構成に よ っ て、 サーバーは効果的に、 動的に作成 さ れた PDF 文書を HTTP リ ク エ ス ト に対 し て返す こ と がで き ます。
まとめると、C#のHttpListenerと組み合わせてIronPDFを使用することで、HTTP上でPDFファイルを動的に作成し、配信する信頼性の高い方法を提供します。 HttpListenerの助けを借りて、C#アプリケーションは、着信リクエストを処理し、柔軟な応答を生成することができる軽量のHTTPサーバーを作成することができます。 IronPDFのダイナミックHTMLからPDFへの変換機能を利用することで、開発者はサーバーサイドのロジックから直接、カスタマイズされたPDFレポートやデータドリブンなPDFレポート、請求書、その他のドキュメントを効果的に作成することができます。
ウェブ・インターフェイスやAPIを介したリアルタイムの文書生成と配信を必要とするアプリケーションでは、この組み合わせが特に有用であろう。 開発者はHttpListenerとIronPDFを使ってスケーラブルでレスポンシブなソリューションを実装することで、特定のビジネス要求に対応することができる。 これらのツールは、ウェブ上でのドキュメントのシームレスな生成と配信を容易にすることで、ユーザー体験を向上させる。
IronPDFを使用してOCRを使用したり、バーコードを操作したり、PDFを作成したり、Excelにリンクしたりすることで、.NET開発用のツールボックスを改善することができます。また、Iron Software Licensing Optionsは、開発者にとって、より効果的な開発とともに、より優れたWebアプリケーションと機能を提供し、開始価格は$749です。 これは、基本的な基盤を高度に適応可能なIron Softwareスイートと技術と組み合わせることによって実現します。
プロジェクトに合わせたライセンスの可能性を明確に示すことで、開発者にとって最適なモデルを選択するプロセスが簡素化される。 これらの利点により、開発者はさまざまな問題に対する解決策を、効果的、タイムリー、かつ協調的に適用することができる。