HttpResponse 클래스

정의

ASP.NET 작업에서 받은 HTTP 응답 정보를 캡슐화합니다.

public ref class HttpResponse sealed
public sealed class HttpResponse
type HttpResponse = class
Public NotInheritable Class HttpResponse
상속
HttpResponse

예제

다음 예제에서는 페이지가 요청되면 겹치는 사각형 3개를 그립니다. 코드는 전체 페이지가 JPEG 이미지로 렌더링되도록 속성을 image/jpeg로 설정 ContentType 하여 시작합니다. 그런 다음 코드는 메서드를 Clear 호출하여 이 응답과 함께 불필요한 콘텐츠가 전송되지 않도록 합니다. 다음으로, 코드는 요청 클라이언트에 전송되기 전에 페이지가 완전히 처리되도록 속성을 true로 설정합니다 BufferOutput . 사각형을 그리는 데 사용되는 두 개의 개체인 및 Bitmap 개체가 Graphics 만들어집니다. 페이지에서 만든 변수는 사각형을 그리는 좌표와 가장 큰 사각형 안에 나타나는 문자열로 사용됩니다.

세 사각형과 그 안에 나타나는 문자열을 그릴 때는 Bitmap 속성과 OutputStream 연결된 개체에 Stream 저장되고 해당 형식은 JPEG로 설정됩니다. 코드는 및 Dispose 메서드를 Dispose 호출하여 두 그리기 개체에서 사용하는 리소스를 해제합니다. 마지막으로 코드는 메서드를 Flush 호출하여 버퍼링된 응답을 요청 클라이언트에 보냅니다.

참고

코드에서 개체는 HttpResponse 키워드(keyword) Response참조됩니다. 예를 들어 는 Response.Clear() 메서드를 참조합니다 HttpResponse.Clear . 클래스에는 Page 의 현재 instance HttpResponse노출하는 라는 Response 속성이 있습니다.

<%@ 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 통해 Response 노출 되는 클래스의 HttpApplication속성을 , , HttpContextPageUserControl 클래스입니다.

클래스의 HttpResponse 다음 메서드는 포스트백 시나리오에서만 지원되며 비동기 포스트백 시나리오에서는 지원되지 않습니다.

부분 페이지 업데이트는 전체 페이지를 포스트백으로 업데이트하는 대신 컨트롤을 사용하여 UpdatePanel 페이지의 선택한 영역을 업데이트할 때 사용하도록 설정됩니다. 자세한 내용은 UpdatePanel 컨트롤 개요 하 고 부분 페이지 렌더링 개요합니다.

생성자

HttpResponse(TextWriter)

HttpResponse 클래스의 새 인스턴스를 초기화합니다.

속성

Buffer

출력의 버퍼링 여부 및 전체 응답의 처리가 완료된 다음에 출력을 보내는지를 나타내는 값을 가져오거나 설정합니다.

BufferOutput

출력의 버퍼링 여부 및 전체 페이지의 처리가 완료된 다음에 출력을 보내는지 여부를 나타내는 값을 가져오거나 설정합니다.

Cache

웹 페이지의 캐싱 정책(만료 시간, 개인 정보 설정 및 vary 절 등)을 가져옵니다.

CacheControl

HttpCacheability 열거형 값 중 하나와 일치하는 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)

현재 응답이 종속된 파일 이름 컬렉션에 하나의 파일 이름을 추가합니다.

AddHeader(String, String)

HTTP 헤더를 출력 스트림에 추가합니다. AddHeader(String, String)는 이전 버전 ASP와의 호환성을 위해 제공됩니다.

AddOnSendingHeaders(Action<HttpContext>)

이 요청에 대해 응답 헤더를 보내기 직전에 ASP.NET 런타임이 호출할 콜백을 등록합니다.

AppendCookie(HttpCookie)

내장 쿠키 컬렉션에 HTTP 쿠키를 추가합니다.

AppendHeader(String, String)

HTTP 헤더를 출력 스트림에 추가합니다.

AppendToLog(String)

사용자 지정 로그 정보를 IIS(인터넷 정보 서비스) 로그 파일에 추가합니다.

ApplyAppPathModifier(String)

세션이 Cookieless 세션 상태를 사용하고 있는 경우 가상 경로에 세션 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)

HTTP 2.0 클라이언트에 푸시 프라미스를 보내는 애플리케이션을 지원합니다. 자세한 내용은 HTTP/2 사양 섹션 8.2: 서버 푸시에서 Http2 서버 푸시와 관련된 자세한 내용을 찾을 수 있습니다.

PushPromise(String, String, NameValueCollection)

HTTP 2.0 클라이언트에 푸시 프라미스를 보내는 애플리케이션을 지원합니다. 자세한 내용은 HTTP/2 사양 섹션 8.2: 서버 푸시에서 Http2 서버 푸시와 관련된 자세한 내용을 찾을 수 있습니다.

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)

HTTP 응답 스트림에 Object를 씁니다.

Write(String)

HTTP 응답 출력 스트림에 문자열을 씁니다.

WriteFile(IntPtr, Int64, Int64)

HTTP 응답 출력 스트림에 지정된 파일을 직접 씁니다.

WriteFile(String)

지정된 파일의 내용을 HTTP 응답 출력 스트림에 파일 블록으로 직접 씁니다.

WriteFile(String, Boolean)

지정된 파일의 내용을 HTTP 응답 출력 스트림에 메모리 블록으로 직접 씁니다.

WriteFile(String, Int64, Int64)

HTTP 응답 출력 스트림에 지정된 파일을 직접 씁니다.

WriteSubstitution(HttpResponseSubstitutionCallback)

응답 대체 블록을 응답에 삽입할 수 있도록 하여 출력 캐시 응답의 지정된 응답 영역을 동적으로 생성할 수 있도록 합니다.

적용 대상