HttpResponse クラス

定義

ASP.NET 操作からの HTTP 応答情報をカプセル化します。

public ref class HttpResponse sealed
public sealed class HttpResponse
type HttpResponse = class
Public NotInheritable Class HttpResponse
継承
HttpResponse

次の例では、ページが要求されたときに 3 つの重なり合う四角形を描画します。 コードはまず、 プロパティを ContentType image/jpeg に設定して、ページ全体が JPEG イメージとしてレンダリングされるようにします。 次に、 メソッドを Clear 呼び出して、この応答で余分なコンテンツが送信されないようにします。 次に、要求側 BufferOutput クライアントに送信される前にページが完全に処理されるように、 プロパティを true に設定します。 四角形の描画に使用される 2 つのオブジェクトが作成されます。 BitmapGraphics オブジェクトです。 ページで作成された変数は、四角形を描画するための座標と、最大の四角形内に表示される文字列として使用されます。

3 つの四角形とその中に表示される文字列が描画されると、 Bitmap は プロパティに関連付OutputStreamけられているオブジェクトにStream保存され、その形式は JPEG に設定されます。 このコードでは、 Dispose メソッドと Dispose メソッドを呼び出して、2 つの描画オブジェクトで使用されるリソースを解放します。 最後に、コードは メソッドを Flush 呼び出して、バッファーに格納された応答を要求側のクライアントに送信します。

注意

コードでは、 HttpResponse オブジェクトは キーワード (keyword) Responseによって参照されます。 たとえば、 Response.Clear() は メソッドを HttpResponse.Clear 参照します。 Pageクラスには、 の現在のインスタンスを公開する という名前ResponseHttpResponseプロパティがあります。

<%@ Page Language="C#" %>
<%@ import Namespace="System.Drawing" %>
<%@ import Namespace="System.Drawing.Imaging" %>
<%@ import Namespace="System.Drawing.Drawing2D" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

    private void Page_Load(object sender, EventArgs e)
    {
// <snippet2>
        // Set the page's content type to JPEG files
        // and clears all content output from the buffer stream.
        Response.ContentType = "image/jpeg";
        Response.Clear();
    
        // Buffer response so that page is sent
        // after processing is complete.
        Response.BufferOutput = true;
// </snippet2>
    
        // Create a font style.
        Font rectangleFont = new Font(
            "Arial", 10, FontStyle.Bold);
    
        // Create integer variables.
        int height = 100;
        int width = 200;
    
        // Create a random number generator and create
        // variable values based on it.
        Random r = new Random();
        int x = r.Next(75);
        int a = r.Next(155);
        int x1 = r.Next(100);
    
        // Create a bitmap and use it to create a
        // Graphics object.
        Bitmap bmp = new Bitmap(
            width, height, PixelFormat.Format24bppRgb);
        Graphics g = Graphics.FromImage(bmp);
    
        g.SmoothingMode = SmoothingMode.AntiAlias;
        g.Clear(Color.LightGray);
    
        // Use the Graphics object to draw three rectangles.
        g.DrawRectangle(Pens.White, 1, 1, width-3, height-3);
        g.DrawRectangle(Pens.Aquamarine, 2, 2, width-3, height-3);
        g.DrawRectangle(Pens.Black, 0, 0, width, height);
    
        // Use the Graphics object to write a string
        // on the rectangles.
        g.DrawString(
            "ASP.NET Samples", rectangleFont,
            SystemBrushes.WindowText, new PointF(10, 40));
    
        // Apply color to two of the rectangles.
        g.FillRectangle(
            new SolidBrush(
                Color.FromArgb(a, 255, 128, 255)),
            x, 20, 100, 50);
    
        g.FillRectangle(
            new LinearGradientBrush(
                new Point(x, 10),
                new Point(x1 + 75, 50 + 30),
                Color.FromArgb(128, 0, 0, 128),
                Color.FromArgb(255, 255, 255, 240)),
            x1, 50, 75, 30);

// <snippet3>    
        // Save the bitmap to the response stream and
        // convert it to JPEG format.
        bmp.Save(Response.OutputStream, ImageFormat.Jpeg);
    
        // Release memory used by the Graphics object
        // and the bitmap.
        g.Dispose();
        bmp.Dispose();
    
        // Send the output to the client.
        Response.Flush();
// </snippet3>
    }

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
    </form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ import Namespace="System.Drawing" %>
<%@ import Namespace="System.Drawing.Imaging" %>
<%@ import Namespace="System.Drawing.Drawing2D" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

   Private Sub Page_Load(sender As Object, e As EventArgs)
' <snippet2>
      ' Set the page's content type to JPEG files
      ' and clears all content output from the buffer stream.
      Response.ContentType = "image/jpeg"
      Response.Clear()
      
      ' Buffer response so that page is sent
      ' after processing is complete.
      Response.BufferOutput = True
' </snippet2>
      
      ' Create a font style.
      Dim rectangleFont As New Font( _
          "Arial", 10, FontStyle.Bold)
      
      ' Create integer variables.
      Dim height As Integer = 100
      Dim width As Integer = 200
      
      ' Create a random number generator and create
      ' variable values based on it.
      Dim r As New Random()
      Dim x As Integer = r.Next(75)
      Dim a As Integer = r.Next(155)
      Dim x1 As Integer = r.Next(100)
      
      ' Create a bitmap and use it to create a
      ' Graphics object.
      Dim bmp As New Bitmap( _
          width, height, PixelFormat.Format24bppRgb)
      Dim g As Graphics = Graphics.FromImage(bmp)
      
      g.SmoothingMode = SmoothingMode.AntiAlias
      g.Clear(Color.LightGray)
      
      ' Use the Graphics object to draw three rectangles.
      g.DrawRectangle(Pens.White, 1, 1, width - 3, height - 3)
      g.DrawRectangle(Pens.Aquamarine, 2, 2, width - 3, height - 3)
      g.DrawRectangle(Pens.Black, 0, 0, width, height)
      
      ' Use the Graphics object to write a string
      ' on the rectangles.
      g.DrawString("ASP.NET Samples", rectangleFont, SystemBrushes.WindowText, New PointF(10, 40))
      
      ' Apply color to two of the rectangles.
      g.FillRectangle( _
          New SolidBrush( _
              Color.FromArgb(a, 255, 128, 255)), _
          x, 20, 100, 50)
      
      g.FillRectangle( _
          New LinearGradientBrush( _
              New Point(x, 10), _
              New Point(x1 + 75, 50 + 30), _
              Color.FromArgb(128, 0, 0, 128), _
              Color.FromArgb(255, 255, 255, 240)), _
          x1, 50, 75, 30)

' <snippet3>      
      ' Save the bitmap to the response stream and
      ' convert it to JPEG format.
      bmp.Save(Response.OutputStream, ImageFormat.Jpeg)
      
      ' Release memory used by the Graphics object
      ' and the bitmap.
      g.Dispose()
      bmp.Dispose()
      
      ' Send the output to the client.
      Response.Flush()
' </snippet3>
   End Sub 'Page_Load

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
    </form>
</body>
</html>

注釈

クラスのHttpResponseメソッドとプロパティは、および UserControl クラスの プロパティをHttpApplicationHttpContextPage通じてResponse公開されます。

クラスの次の HttpResponse メソッドは、ポストバック シナリオでのみサポートされ、非同期ポストバック シナリオではサポートされません。

ページ全体をポスト バックで更新する代わりに、コントロールを使用 UpdatePanel してページの選択した領域を更新すると、ページの部分的な更新が有効になります。 詳細については、「 UpdatePanel コントロールの概要 」および「 部分ページ レンダリングの概要」を参照してください

コンストラクター

HttpResponse(TextWriter)

HttpResponse クラスの新しいインスタンスを初期化します。

プロパティ

Buffer

応答全体の処理が完了した後に、出力をバッファリングしてから送信するかどうかを示す値を取得または設定します。

BufferOutput

ページ全体の処理が完了した後に、出力をバッファリングしてから送信するかどうかを示す値を取得または設定します。

Cache

Web ページのキャッシュ ポリシー (expiration time 句、privacy settings 句、および vary 句) を取得します。

CacheControl

HttpCacheability 列挙値の 1 つに一致する Cache-Control HTTP ヘッダーを取得または設定します。

Charset

出力ストリームの HTTP 文字セットを取得または設定します。

ClientDisconnectedToken

クライアントの接続が切断されるとトリップされる CancellationToken オブジェクトを取得します。

ContentEncoding

出力ストリームの HTTP 文字セットを取得または設定します。

ContentType

出力ストリームの HTTP MIME タイプを取得または設定します。

Cookies

応答のクッキー コレクションを取得します。

Expires

ブラウザーでキャッシュされたページの有効期限が切れるまでの時間を分単位で取得または設定します。 有効期限が切れる前にユーザーが同じページに戻った場合、キャッシュされたバージョンが表示されます。 Expires は、ASP の旧バージョンとの互換性のために提供されています。

ExpiresAbsolute

キャッシュされた情報をキャッシュから削除する絶対日時を取得または設定します。 ExpiresAbsolute は、ASP の旧バージョンとの互換性のために提供されています。

Filter

伝送する前に HTTP エンティティ本体を変更するために使用される、ラッピング フィルター オブジェクトを取得または設定します。

HeaderEncoding

現在のヘッダー出力ストリームのエンコーディングを表す Encoding オブジェクトを取得または設定します。

Headers

応答ヘッダーのコレクションを取得します。

HeadersWritten

応答ヘッダーが既に作成されたかどうかを示す値を取得します。

IsClientConnected

クライアントがサーバーにまだ接続されているかどうかを示す値を取得します。

IsRequestBeingRedirected

クライアントが新しい場所へ転送されている最中かどうかを示すブール値を取得します。

Output

発信 HTTP 応答ストリームへのテキストの出力を有効にします。

OutputStream

発信 HTTP コンテンツ本体へのバイナリ出力を有効にします。

RedirectLocation

HTTP Location ヘッダーの値を取得または設定します。

Status

クライアントに返される Status ラインを設定します。

StatusCode

クライアントへ返される出力の HTTP ステータス コードを取得または設定します。

StatusDescription

クライアントへ返される出力の HTTP ステータス文字列を取得または設定します。

SubStatusCode

応答のステータス コードを修飾する値を取得または設定します。

SupportsAsyncFlush

接続が非同期のフラッシュ操作をサポートするかどうかを示す値を取得します。

SuppressContent

HTTP コンテンツをクライアントに送信するかどうかを示す値を取得または設定します。

SuppressDefaultCacheControlHeader

現在の HTTP 応答の既定 Cache Control: private のヘッダーを抑制するかどうかを示す値を取得または設定します。

SuppressFormsAuthenticationRedirect

ログイン ページへのフォーム認証のリダイレクトを抑制する必要があるかどうかを示す値を取得または設定します。

TrySkipIisCustomErrors

IIS 7.0 カスタム エラーを無効にするかどうかを指定する値を取得または設定します。

メソッド

AddCacheDependency(CacheDependency[])

応答が出力キャッシュに格納されていて、指定した依存関係が変化した場合、キャッシュ依存関係のセットを応答に関連付け、応答を効率的に無効化します。

AddCacheItemDependencies(ArrayList)

キャッシュ内の他のアイテムに依存するキャッシュされた応答を有効にします。

AddCacheItemDependencies(String[])

キャッシュ内の他のアイテムに依存するキャッシュされたアイテムを有効にします。

AddCacheItemDependency(String)

キャッシュ内の他のアイテムに依存するキャッシュされた応答を有効にします。

AddFileDependencies(ArrayList)

ファイル名のグループを、現在の応答が依存しているファイル名のコレクションに追加します。

AddFileDependencies(String[])

ファイル名の配列を、現在の応答が依存しているファイル名のコレクションに追加します。

AddFileDependency(String)

現在の応答が依存しているファイル名のコレクションに、ファイル名を 1 つ追加します。

AddHeader(String, String)

HTTP ヘッダーを出力ストリームに追加します。 AddHeader(String, String) は、ASP の旧バージョンとの互換性のために提供されています。

AddOnSendingHeaders(Action<HttpContext>)

この要求に対応する応答ヘッダーを送信する直前に、ASP.NET ランタイムが呼び出すコールバックを登録します。

AppendCookie(HttpCookie)

HTTP クッキーを組み込みクッキー コレクションに追加します。

AppendHeader(String, String)

HTTP ヘッダーを出力ストリームに追加します。

AppendToLog(String)

カスタム ログ情報をインターネット インフォメーション サービス (IIS: Internet Information Services) ログ ファイルに追加します。

ApplyAppPathModifier(String)

セッションが Cookieless セッション状態を使用している場合に、セッション ID を仮想パスに追加し、その ID を組み合わせたパスを返します。 Cookieless セッション状態が使用されていない場合、ApplyAppPathModifier(String) は元の仮想パスを返します。

BeginFlush(AsyncCallback, Object)

現在バッファリングされているすべての応答をクライアントへ送信します。

BinaryWrite(Byte[])

HTTP 出力ストリームにバイナリ文字の文字列を書き込みます。

Clear()

すべての内容出力をバッファー ストリームから削除します。

ClearContent()

すべての内容出力をバッファー ストリームから削除します。

ClearHeaders()

バッファー ストリームからすべてのヘッダーを削除します。

Close()

クライアントへのソケット接続を閉じます。

DisableKernelCache()

現在の応答に対するカーネル キャッシュを無効にします。

DisableUserCache()

この応答に対する IIS ユーザー モードのキャッシュを無効にします。

End()

現在バッファリングされているすべての出力をクライアントへ送信し、ページの実行を停止して、EndRequest イベントを発生させます。

EndFlush(IAsyncResult)

非同期のフラッシュ操作を完了します。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
Flush()

現在バッファリングされているすべての出力をクライアントへ送信します。

FlushAsync()

現在バッファリングされているすべての出力をクライアントへ非同期的に送信します。

GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
Pics(String)

HTTP PICS-Label ヘッダーを出力ストリームに追加します。

PushPromise(String)

プッシュ promise を HTTP 2.0 クライアントに送信する アプリケーションがサポートされます。 詳細については、HTTP/2 仕様のセクション 8.2 の「Server Push」 (サーバー プッシュ) を参照してください。

PushPromise(String, String, NameValueCollection)

プッシュ promise を HTTP 2.0 クライアントに送信する アプリケーションがサポートされます。 詳細については、HTTP/2 仕様のセクション 8.2 の「Server Push」 (サーバー プッシュ) を参照してください。

Redirect(String)

新しい URL に要求をリダイレクトして、新しい URL を指定します。

Redirect(String, Boolean)

クライアントを新しい URL にリダイレクトします。 新しい URL を指定し、さらに現在のページの実行を終了するかどうかを指定します。

RedirectPermanent(String)

要求された URL から指定された URL への永続的なリダイレクトを実行します。

RedirectPermanent(String, Boolean)

要求された URL から指定された URL への永続的なリダイレクトを実行し、応答を完了するためのオプションを提供します。

RedirectToRoute(Object)

ルートのパラメーター値を使用して、新しい URL に要求をリダイレクトします。

RedirectToRoute(RouteValueDictionary)

ルートのパラメーター値を使用して、新しい URL に要求をリダイレクトします。

RedirectToRoute(String)

ルート名を使用して、新しい URL に要求をリダイレクトします。

RedirectToRoute(String, Object)

ルートのパラメーター値とルート名を使用して、新しい URL に要求をリダイレクトします。

RedirectToRoute(String, RouteValueDictionary)

ルートのパラメーター値とルート名を使用して、新しい URL に要求をリダイレクトします。

RedirectToRoutePermanent(Object)

ルートのパラメーター値を使用して、要求された URL から新しい URL への永続的なリダイレクトを実行します。

RedirectToRoutePermanent(RouteValueDictionary)

ルートのパラメーター値を使用して、要求された URL から新しい URL への永続的なリダイレクトを実行します。

RedirectToRoutePermanent(String)

ルート名を使用して、要求された URL から新しい URL への永続的なリダイレクトを実行します。

RedirectToRoutePermanent(String, Object)

新しい URL に対応するルートのパラメーター値とルート名を使用して、要求された URL から新しい URL への永続的なリダイレクトを実行します。

RedirectToRoutePermanent(String, RouteValueDictionary)

ルートのパラメーター値とルート名を使用して、要求された URL から新しい URL への永続的なリダイレクトを実行します。

RemoveOutputCacheItem(String)

既定の出力キャッシュ プロバイダーに関連付けられているキャッシュされたアイテムをすべてキャッシュから削除します。 これは静的メソッドです。

RemoveOutputCacheItem(String, String)

指定された出力キャッシュ プロバイダーを使用して、指定されたパスに関連付けられている出力キャッシュ アイテムをすべて削除します。

SetCookie(HttpCookie)

HttpResponse.SetCookie メソッドは内部でのみ使用されるため、コードで呼び出すべきではありません。 代わりに、次の例に示すように HttpResponse.Cookies.Set メソッドを呼び出すことができます。
クッキー コレクションの既存のクッキーを更新します。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)
TransmitFile(String)

指定されたファイル ディレクトリを、メモリにバッファリングせずに、HTTP 応答出力ストリームに直接書き込みます。

TransmitFile(String, Int64, Int64)

指定したファイル ディレクトリの一部を、メモリにバッファリングせずに、HTTP 応答出力ストリームに直接書き込みます。

Write(Char)

文字を HTTP 応答出力ストリームに書き込みます。

Write(Char[], Int32, Int32)

文字配列を HTTP 応答出力ストリームに書き込みます。

Write(Object)

Object を HTTP 応答出力ストリームに書き込みます。

Write(String)

文字列を HTTP 応答出力ストリームに書き込みます。

WriteFile(IntPtr, Int64, Int64)

指定したファイルを HTTP 応答出力ストリームに直接書き込みます。

WriteFile(String)

指定されたファイルの内容を、ファイル ブロックとして HTTP 応答出力ストリームに直接書き込みます。

WriteFile(String, Boolean)

指定されたファイルの内容を、メモリ ブロックとして HTTP 応答出力ストリームに直接書き込みます。

WriteFile(String, Int64, Int64)

指定したファイルを HTTP 応答出力ストリームに直接書き込みます。

WriteSubstitution(HttpResponseSubstitutionCallback)

応答置換ブロックを応答に挿入できます。これにより、出力キャッシュされた応答の指定された応答領域を動的に生成できます。

適用対象