WebRequest WebRequest WebRequest WebRequest Class

Definition

URI(Uniform Resource Identifier)에 대한 요청을 만듭니다. Makes a request to a Uniform Resource Identifier (URI). 이 클래스는 abstract 클래스입니다. This is an abstract class.

public ref class WebRequest abstract : MarshalByRefObject, System::Runtime::Serialization::ISerializable
[Serializable]
public abstract class WebRequest : MarshalByRefObject, System.Runtime.Serialization.ISerializable
type WebRequest = class
    inherit MarshalByRefObject
    interface ISerializable
Public MustInherit Class WebRequest
Inherits MarshalByRefObject
Implements ISerializable
Inheritance
Derived
Attributes
SerializableAttribute
Implements

Examples

다음 예제에서는 만드는 방법을 보여 줍니다는 WebRequest 인스턴스 및 응답을 반환 합니다.The following example shows how to create a WebRequest instance and return the response.

#using <System.dll>

using namespace System;
using namespace System::IO;
using namespace System::Net;
using namespace System::Text;
int main()
{
   
   // Create a request for the URL.   
   WebRequest^ request = WebRequest::Create( "http://www.contoso.com/default.html" );
   
   // If required by the server, set the credentials.
   request->Credentials = CredentialCache::DefaultCredentials;
   
   // Get the response.
   HttpWebResponse^ response = dynamic_cast<HttpWebResponse^>(request->GetResponse());
   
   // Display the status.
   Console::WriteLine( response->StatusDescription );
   
   // Get the stream containing content returned by the server.
   Stream^ dataStream = response->GetResponseStream();
   
   // Open the stream using a StreamReader for easy access.
   StreamReader^ reader = gcnew StreamReader( dataStream );
   
   // Read the content.
   String^ responseFromServer = reader->ReadToEnd();
   
   // Display the content.
   Console::WriteLine( responseFromServer );
   
   // Cleanup the streams and the response.
   reader->Close();
   dataStream->Close();
   response->Close();
}

using System;
using System.IO;
using System.Net;
using System.Text;

namespace Examples.System.Net
{
    public class WebRequestGetExample
    {
        public static void Main ()
        {
            // Create a request for the URL. 		
            WebRequest request = WebRequest.Create ("http://www.contoso.com/default.html");
            // If required by the server, set the credentials.
            request.Credentials = CredentialCache.DefaultCredentials;
            // Get the response.
            HttpWebResponse response = (HttpWebResponse)request.GetResponse ();
            // Display the status.
            Console.WriteLine (response.StatusDescription);
            // Get the stream containing content returned by the server.
            Stream dataStream = response.GetResponseStream ();
            // Open the stream using a StreamReader for easy access.
            StreamReader reader = new StreamReader (dataStream);
            // Read the content.
            string responseFromServer = reader.ReadToEnd ();
            // Display the content.
            Console.WriteLine (responseFromServer);
            // Cleanup the streams and the response.
            reader.Close ();
            dataStream.Close ();
            response.Close ();
        }
    }
}
Imports System
Imports System.IO
Imports System.Net
Imports System.Text
Namespace Examples.System.Net
    Public Class WebRequestGetExample

        Public Shared Sub Main()
            ' Create a request for the URL. 		
            Dim request As WebRequest = WebRequest.Create("http://www.contoso.com/default.html")
            ' If required by the server, set the credentials.
            request.Credentials = CredentialCache.DefaultCredentials
            ' Get the response.
            Dim response As HttpWebResponse = CType(request.GetResponse(), HttpWebResponse)
            ' Display the status.
            Console.WriteLine(response.StatusDescription)
            ' Get the stream containing content returned by the server.
            Dim dataStream As Stream = response.GetResponseStream()
            ' Open the stream using a StreamReader for easy access.
            Dim reader As New StreamReader(dataStream)
            ' Read the content.
            Dim responseFromServer As String = reader.ReadToEnd()
            ' Display the content.
            Console.WriteLine(responseFromServer)
            ' Cleanup the streams and the response.
            reader.Close()
            dataStream.Close()
            response.Close()
        End Sub 'Main
    End Class 'WebRequestGetExample
End Namespace

Remarks

WebRequestabstract 기본 클래스입니다. 인터넷에서 데이터에 액세스 하기 위한 NET의 요청/응답 모델입니다.WebRequest is the abstract base class for .NET's request/response model for accessing data from the Internet. 요청/응답 모델을 사용 하는 응용 프로그램의 인스턴스를 사용 하 여 응용 프로그램이 작동 하는 프로토콜 독립적인 방식으로 인터넷에서 데이터를 요청할 수는 WebRequest 프로토콜별 하위 항목 클래스의 세부 정보를 수행 하는 동안 클래스 요청입니다.An application that uses the request/response model can request data from the Internet in a protocol-agnostic manner, in which the application works with instances of the WebRequest class while protocol-specific descendant classes carry out the details of the request.

요청은 응용 프로그램에서 서버의 웹 페이지와 같은 특정 URI로 전송 됩니다.Requests are sent from an application to a particular URI, such as a Web page on a server. 목록에서 만들려는 적절 한 하위 클래스를 결정 하는 URI WebRequest 하위 응용 프로그램에 등록 합니다.The URI determines the proper descendant class to create from a list of WebRequest descendants registered for the application. WebRequest 하위 항목은 일반적으로 HTTP 또는 FTP와 같은 특정 프로토콜을 처리 하도록 등록 되어 있지만 특정 서버 또는 서버의 경로 요청을 처리 하도록 등록할 수 있습니다.WebRequest descendants are typically registered to handle a specific protocol, such as HTTP or FTP, but can be registered to handle a request to a specific server or path on a server.

합니다 WebRequest throw 클래스는 WebException 인터넷 리소스에 액세스 하는 동안 오류가 발생 한 경우.The WebRequest class throws a WebException when errors occur while accessing an Internet resource. 합니다 Status 속성 중 하나인는 WebExceptionStatus 오류의 출처를 나타내는 값입니다.The Status property is one of the WebExceptionStatus values that indicates the source of the error. StatusWebExceptionStatus.ProtocolErrorResponse 속성을 포함 합니다 WebResponse 인터넷 리소스에서 받은 합니다.When Status is WebExceptionStatus.ProtocolError, the Response property contains the WebResponse received from the Internet resource.

때문에 WebRequest 클래스는 abstract 클래스의 실제 동작 WebRequest 런타임에 인스턴스 반환한 하위 클래스에 의해 결정 됩니다 Create 메서드.Because the WebRequest class is an abstract class, the actual behavior of WebRequest instances at run time is determined by the descendant class returned by Create method. 기본 값 및 예외에 대 한 자세한 내용은 참조 하위 클래스에 대 한 설명서와 같은 HttpWebRequestFileWebRequest입니다.For more information about default values and exceptions, see the documentation for the descendant classes, such as HttpWebRequest and FileWebRequest.

참고

사용 된 Create 새로운 초기화 하는 방법 WebRequest 인스턴스.Use the Create method to initialize new WebRequest instances. 사용 하지 마십시오는 WebRequest 생성자입니다.Do not use the WebRequest constructor.

참고

일반 사용자의 자격 증명을 사용 하 여 실행 되는 WebRequest 개체를 만드는 응용 프로그램 응용 프로그램 권한을 명시적으로 부여 되어 사용자에 게 이렇게 하려면 로컬 컴퓨터 저장소에 설치 된 인증서에 액세스할 수 없습니다.If the application that creates the WebRequest object runs with the credentials of a Normal user, the application will not be able to access certificates installed in the local machine store unless permission has been explicitly given to the user to do so.

Notes to Inheritors

상속 하는 경우 WebRequest, 다음 멤버를 재정의 해야 합니다: Method, RequestUri, Headers, ContentLengthContentType, Credentials, PreAuthenticate, GetRequestStream()BeginGetRequestStream(AsyncCallback, Object), EndGetRequestStream(IAsyncResult)GetResponse(), BeginGetResponse(AsyncCallback, Object), 및 EndGetResponse(IAsyncResult)합니다. When you inherit from WebRequest, you must override the following members: Method, RequestUri, Headers, ContentLength, ContentType, Credentials, PreAuthenticate, GetRequestStream(), BeginGetRequestStream(AsyncCallback, Object), EndGetRequestStream(IAsyncResult), GetResponse(), BeginGetResponse(AsyncCallback, Object), and EndGetResponse(IAsyncResult). 구현을 제공 해야는 또한 합니다 IWebRequestCreate 인터페이스를 정의 하는 합니다 Create(Uri) 메서드를 호출할 때 사용 되는 Create(Uri)합니다. In addition, you must provide an implementation of the IWebRequestCreate interface, which defines the Create(Uri) method used when you call Create(Uri). 구현 하는 클래스를 등록 해야 합니다 IWebRequestCreate 인터페이스를 사용 하 여를 RegisterPrefix(String, IWebRequestCreate) 메서드 또는 구성 파일입니다. You must register the class that implements the IWebRequestCreate interface, using the RegisterPrefix(String, IWebRequestCreate) method or the configuration file.

Constructors

WebRequest() WebRequest() WebRequest() WebRequest()

WebRequest 클래스의 새 인스턴스를 초기화합니다. Initializes a new instance of the WebRequest class.

WebRequest(SerializationInfo, StreamingContext) WebRequest(SerializationInfo, StreamingContext) WebRequest(SerializationInfo, StreamingContext) WebRequest(SerializationInfo, StreamingContext)

WebRequestSerializationInfo 클래스의 지정된 인스턴스로부터 StreamingContext 클래스의 새 인스턴스를 초기화합니다. Initializes a new instance of the WebRequest class from the specified instances of the SerializationInfo and StreamingContext classes.

Properties

AuthenticationLevel AuthenticationLevel AuthenticationLevel AuthenticationLevel

이 요청에 사용되는 인증 및 가장 수준을 나타내는 값을 가져오거나 설정합니다. Gets or sets values indicating the level of authentication and impersonation used for this request.

CachePolicy CachePolicy CachePolicy CachePolicy

이 요청에 대한 캐시 정책을 가져오거나 설정합니다. Gets or sets the cache policy for this request.

ConnectionGroupName ConnectionGroupName ConnectionGroupName ConnectionGroupName

파생 클래스에서 재정의되면 요청에 대한 연결 그룹 이름을 가져오거나 설정합니다. When overridden in a descendant class, gets or sets the name of the connection group for the request.

ContentLength ContentLength ContentLength ContentLength

하위 항목 클래스에서 재정의될 때, 전송 중인 요청 데이터의 콘텐츠 길이를 가져오거나 설정합니다. When overridden in a descendant class, gets or sets the content length of the request data being sent.

ContentType ContentType ContentType ContentType

하위 항목 클래스에서 재정의될 때, 전송 중인 요청 데이터의 콘텐츠 형식을 가져오거나 설정합니다. When overridden in a descendant class, gets or sets the content type of the request data being sent.

CreatorInstance CreatorInstance CreatorInstance CreatorInstance

하위 클래스에서 재정의될 때, 지정된 URI 에 요청하기 위해 인스턴스화된 WebRequest를 만드는 데 사용되는 IWebRequestCreate 클래스에서 파생된 팩터리 개체를 가져옵니다. When overridden in a descendant class, gets the factory object derived from the IWebRequestCreate class used to create the WebRequest instantiated for making the request to the specified URI.

Credentials Credentials Credentials Credentials

하위 항목 클래스에서 재정의될 때, 인터넷 리소스를 사용하여 요청을 인증하는 데 사용되는 네트워크 자격 증명을 가져오거나 설정합니다. When overridden in a descendant class, gets or sets the network credentials used for authenticating the request with the Internet resource.

DefaultCachePolicy DefaultCachePolicy DefaultCachePolicy DefaultCachePolicy

이 요청에 대한 기본 캐시 정책을 가져오거나 설정합니다. Gets or sets the default cache policy for this request.

DefaultWebProxy DefaultWebProxy DefaultWebProxy DefaultWebProxy

글로벌 HTTP 프록시를 가져오거나 설정합니다. Gets or sets the global HTTP proxy.

Headers Headers Headers Headers

하위 항목 클래스에서 재정의될 때, 요청과 연결된 헤더 이름/값 쌍의 컬렉션을 가져오거나 설정합니다. When overridden in a descendant class, gets or sets the collection of header name/value pairs associated with the request.

ImpersonationLevel ImpersonationLevel ImpersonationLevel ImpersonationLevel

현재 요청에 대한 가장 수준을 가져오거나 설정합니다. Gets or sets the impersonation level for the current request.

Method Method Method Method

하위 항목 클래스에서 재정의될 때, 이 요청에서 사용할 프로토콜 메서드를 가져오거나 설정합니다. When overridden in a descendant class, gets or sets the protocol method to use in this request.

PreAuthenticate PreAuthenticate PreAuthenticate PreAuthenticate

하위 항목 클래스에서 재정의될 때, 요청을 사전 인증할지를 나타냅니다. When overridden in a descendant class, indicates whether to pre-authenticate the request.

Proxy Proxy Proxy Proxy

하위 항목 클래스에서 재정의될 때, 이 인터넷 리소스에 액세스하기 위해 사용할 네트워크 프록시를 가져오거나 설정합니다. When overridden in a descendant class, gets or sets the network proxy to use to access this Internet resource.

RequestUri RequestUri RequestUri RequestUri

하위 항목 클래스에서 재정의될 때, 요청과 연결된 인터넷 리소스의 URI를 가져옵니다. When overridden in a descendant class, gets the URI of the Internet resource associated with the request.

Timeout Timeout Timeout Timeout

요청이 시간 초과되기 전의 시간(밀리초)을 가져오거나 설정합니다. Gets or sets the length of time, in milliseconds, before the request times out.

UseDefaultCredentials UseDefaultCredentials UseDefaultCredentials UseDefaultCredentials

서브클래스에서 재정의된 경우 DefaultCredentials를 요청과 함께 보낼지 여부를 제어하는 Boolean 값을 가져오거나 설정합니다. When overridden in a descendant class, gets or sets a Boolean value that controls whether DefaultCredentials are sent with requests.

Methods

Abort() Abort() Abort() Abort()

요청을 중단합니다. Aborts the request.

BeginGetRequestStream(AsyncCallback, Object) BeginGetRequestStream(AsyncCallback, Object) BeginGetRequestStream(AsyncCallback, Object) BeginGetRequestStream(AsyncCallback, Object)

서브클래스에서 재정의될 때, GetRequestStream() 메서드의 비동기 버전을 제공합니다. When overridden in a descendant class, provides an asynchronous version of the GetRequestStream() method.

BeginGetResponse(AsyncCallback, Object) BeginGetResponse(AsyncCallback, Object) BeginGetResponse(AsyncCallback, Object) BeginGetResponse(AsyncCallback, Object)

하위 항목 클래스에서 재정의될 때, 인터넷 리소스에 대한 비동기 요청을 시작합니다. When overridden in a descendant class, begins an asynchronous request for an Internet resource.

Create(String) Create(String) Create(String) Create(String)

지정된 URI 체계에 대한 새 WebRequest 인스턴스를 초기화합니다. Initializes a new WebRequest instance for the specified URI scheme.

Create(Uri) Create(Uri) Create(Uri) Create(Uri)

지정된 URI 체계에 대한 새 WebRequest 인스턴스를 초기화합니다. Initializes a new WebRequest instance for the specified URI scheme.

CreateDefault(Uri) CreateDefault(Uri) CreateDefault(Uri) CreateDefault(Uri)

지정된 URI 체계에 대한 새 WebRequest 인스턴스를 초기화합니다. Initializes a new WebRequest instance for the specified URI scheme.

CreateHttp(String) CreateHttp(String) CreateHttp(String) CreateHttp(String)

지정된 URI 문자열에 대한 새 HttpWebRequest 인스턴스를 초기화합니다. Initializes a new HttpWebRequest instance for the specified URI string.

CreateHttp(Uri) CreateHttp(Uri) CreateHttp(Uri) CreateHttp(Uri)

지정된 URI에 대한 새 HttpWebRequest 인스턴스를 초기화합니다. Initializes a new HttpWebRequest instance for the specified URI.

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

원격 개체와 통신하는 데 사용되는 프록시 생성에 필요한 모든 관련 정보가 들어 있는 개체를 만듭니다. Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
EndGetRequestStream(IAsyncResult) EndGetRequestStream(IAsyncResult) EndGetRequestStream(IAsyncResult) EndGetRequestStream(IAsyncResult)

서브클래스에서 재정의될 때, 인터넷 리소스에 데이터를 쓰기 위해 Stream을 반환합니다. When overridden in a descendant class, returns a Stream for writing data to the Internet resource.

EndGetResponse(IAsyncResult) EndGetResponse(IAsyncResult) EndGetResponse(IAsyncResult) EndGetResponse(IAsyncResult)

파생 클래스에서 재정의될 때, WebResponse를 반환합니다. When overridden in a descendant class, returns a WebResponse.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다. Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

기본 해시 함수로 작동합니다. Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

이 인스턴스의 수명 정책을 제어하는 현재의 수명 서비스 개체를 검색합니다. Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext)

대상 개체를 직렬화하는 데 필요한 데이터로 SerializationInfo를 채웁니다. Populates a SerializationInfo with the data needed to serialize the target object.

GetRequestStream() GetRequestStream() GetRequestStream() GetRequestStream()

서브클래스에서 재정의될 때, 인터넷 리소스에 데이터를 쓰기 위해 Stream을 반환합니다. When overridden in a descendant class, returns a Stream for writing data to the Internet resource.

GetRequestStreamAsync() GetRequestStreamAsync() GetRequestStreamAsync() GetRequestStreamAsync()

서브클래스에서 재정의될 때, 인터넷 리소스에 비동기 작업으로 데이터를 쓰기 위해 Stream을 반환합니다. When overridden in a descendant class, returns a Stream for writing data to the Internet resource as an asynchronous operation.

GetResponse() GetResponse() GetResponse() GetResponse()

하위 항목 클래스에 재정의될 때, 인터넷 요청에 대한 응답을 반환합니다. When overridden in a descendant class, returns a response to an Internet request.

GetResponseAsync() GetResponseAsync() GetResponseAsync() GetResponseAsync()

하위 항목 클래스에 재정의될 때, 인터넷 요청에 대한 응답을 비동기 작업으로 반환합니다. When overridden in a descendant class, returns a response to an Internet request as an asynchronous operation.

GetSystemWebProxy() GetSystemWebProxy() GetSystemWebProxy() GetSystemWebProxy()

현재 가장한 사용자의 Internet Explorer 설정에 구성된 프록시를 반환합니다. Returns a proxy configured with the Internet Explorer settings of the currently impersonated user.

GetType() GetType() GetType() GetType()

현재 인스턴스의 Type을 가져옵니다. Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

이 인스턴스의 수명 정책을 제어하는 수명 서비스 개체를 가져옵니다. Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다. Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

현재 MarshalByRefObject 개체의 단순 복사본을 만듭니다. Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
RegisterPortableWebRequestCreator(IWebRequestCreate) RegisterPortableWebRequestCreator(IWebRequestCreate) RegisterPortableWebRequestCreator(IWebRequestCreate) RegisterPortableWebRequestCreator(IWebRequestCreate)

IWebRequestCreate 개체를 등록합니다. Register an IWebRequestCreate object.

RegisterPrefix(String, IWebRequestCreate) RegisterPrefix(String, IWebRequestCreate) RegisterPrefix(String, IWebRequestCreate) RegisterPrefix(String, IWebRequestCreate)

지정된 URI에 대한 WebRequest 하위 항목을 등록합니다. Registers a WebRequest descendant for the specified URI.

ToString() ToString() ToString() ToString()

현재 개체를 나타내는 문자열을 반환합니다. Returns a string that represents the current object.

(Inherited from Object)

Explicit Interface Implementations

ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext)

서브클래스에서 재정의될 때, WebRequest를 serialize하는 데 필요한 데이터로 SerializationInfo 인스턴스를 채웁니다. When overridden in a descendant class, populates a SerializationInfo instance with the data needed to serialize the WebRequest.

Security

WebPermission
요청된 된 URI 또는 URI에 요청을 리디렉션할에 액세스 합니다. To access the requested URI or any URI that the request is redirected to. 연관된 열거형: Connect Associated enumeration: Connect.

Applies to

See Also