HttpWebRequest.GetRequestStream 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
Stream 요청 데이터를 쓰는 데 사용할 개체를 가져옵니다.
오버로드
| Name | Description |
|---|---|
| GetRequestStream() |
Stream 요청 데이터를 쓰는 데 사용할 개체를 가져옵니다. |
| GetRequestStream(TransportContext) |
Stream 요청 데이터를 작성하는 데 사용할 개체를 가져오고 스트림과 연결된 개체를 출력합니다TransportContext. |
GetRequestStream()
- Source:
- HttpWebRequest.cs
- Source:
- HttpWebRequest.cs
- Source:
- HttpWebRequest.cs
- Source:
- HttpWebRequest.cs
- Source:
- HttpWebRequest.cs
Stream 요청 데이터를 쓰는 데 사용할 개체를 가져옵니다.
public:
override System::IO::Stream ^ GetRequestStream();
public override System.IO.Stream GetRequestStream();
override this.GetRequestStream : unit -> System.IO.Stream
Public Overrides Function GetRequestStream () As Stream
반품
Stream 요청 데이터를 작성하는 데 사용하는 A입니다.
예외
GET Method 또는 HEAD 속성입니다.
-또는-
KeepAlive is true, AllowWriteStreamBuffering is false, ContentLength is -1, SendChunked is false, 및 Method POST 또는 PUT입니다.
요청 캐시 유효성 검사기는 이 요청에 대한 응답을 캐시에서 처리할 수 있음을 나타냅니다. 그러나 데이터를 쓰는 요청은 캐시를 사용하지 않아야 합니다. 이 예외는 잘못 구현된 사용자 지정 캐시 유효성 검사기를 사용하는 경우에 발생할 수 있습니다.
.NET Compact Framework 애플리케이션에서 콘텐츠 길이가 0인 요청 스트림을 올바르게 가져오고 닫지 않았습니다.
예제
다음 코드 예제에서는 스트림 인스턴스를 GetRequestStream 반환 하는 메서드를 사용 합니다.
// Set the 'Method' property of the 'Webrequest' to 'POST'.
myHttpWebRequest.Method = "POST";
Console.WriteLine ("\nPlease enter the data to be posted to the (http://www.contoso.com/codesnippets/next.asp) Uri :");
// Create a new string object to POST data to the Url.
string inputData = Console.ReadLine ();
string postData = "firstone=" + inputData;
ASCIIEncoding encoding = new ASCIIEncoding ();
byte[] byte1 = encoding.GetBytes (postData);
// Set the content type of the data being posted.
myHttpWebRequest.ContentType = "application/x-www-form-urlencoded";
// Set the content length of the string being posted.
myHttpWebRequest.ContentLength = byte1.Length;
Stream newStream = myHttpWebRequest.GetRequestStream ();
newStream.Write (byte1, 0, byte1.Length);
Console.WriteLine ("The value of 'ContentLength' property after sending the data is {0}", myHttpWebRequest.ContentLength);
// Close the Stream object.
newStream.Close ();
' Set the 'Method' property of the 'Webrequest' to 'POST'.
myHttpWebRequest.Method = "POST"
Console.WriteLine(ControlChars.Cr + "Please enter the data to be posted to the (http://www.contoso.com/codesnippets/next.asp) Uri :")
' Create a new string object to POST data to the Url.
Dim inputData As String = Console.ReadLine()
Dim postData As String = "firstone" + ChrW(61) + inputData
Dim encoding As New ASCIIEncoding()
Dim byte1 As Byte() = encoding.GetBytes(postData)
' Set the content type of the data being posted.
myHttpWebRequest.ContentType = "application/x-www-form-urlencoded"
' Set the content length of the string being posted.
myHttpWebRequest.ContentLength = byte1.Length
Dim newStream As Stream = myHttpWebRequest.GetRequestStream()
newStream.Write(byte1, 0, byte1.Length)
Console.WriteLine("The value of 'ContentLength' property after sending the data is {0}", myHttpWebRequest.ContentLength)
newStream.Close()
설명
주의
WebRequest, HttpWebRequest, ServicePoint및 WebClient 사용되지 않으므로 새 개발에 사용하면 안 됩니다.
HttpClient를 대신 사용하세요.
메서드는 GetRequestStream 에 대한 데이터를 보내는 데 사용할 스트림을 반환합니다 HttpWebRequest. 개체가 Stream 반환된 후 메서드를 HttpWebRequest 사용하여 Stream.Write 데이터를 보낼 수 있습니다.
애플리케이션이 속성 값을 ContentLength 설정해야 하는 경우 스트림을 검색하기 전에 이 작업을 수행해야 합니다.
메서드를 Stream.Close 호출하여 스트림을 닫고 다시 사용할 연결을 해제해야 합니다. 스트림을 닫지 않으면 애플리케이션에 연결이 부족합니다.
메모
애플리케이션은 특정 요청에 대해 동기 및 비동기 메서드를 혼합할 수 없습니다. 메서드를 호출하는 GetRequestStream 경우 메서드를 GetResponse 사용하여 응답을 검색해야 합니다.
메모
이 멤버는 애플리케이션에서 네트워크 추적을 사용하도록 설정할 때 추적 정보를 출력합니다. 자세한 내용은 .NET Framework의Network 추적 참조하세요.
추가 정보
적용 대상
GetRequestStream(TransportContext)
- Source:
- HttpWebRequest.cs
- Source:
- HttpWebRequest.cs
- Source:
- HttpWebRequest.cs
- Source:
- HttpWebRequest.cs
- Source:
- HttpWebRequest.cs
Stream 요청 데이터를 작성하는 데 사용할 개체를 가져오고 스트림과 연결된 개체를 출력합니다TransportContext.
public:
System::IO::Stream ^ GetRequestStream([Runtime::InteropServices::Out] System::Net::TransportContext ^ % context);
public System.IO.Stream GetRequestStream(out System.Net.TransportContext? context);
public System.IO.Stream GetRequestStream(out System.Net.TransportContext context);
override this.GetRequestStream : TransportContext -> System.IO.Stream
Public Function GetRequestStream (ByRef context As TransportContext) As Stream
매개 변수
- context
- TransportContext
TransportContext 에 대한 것입니다Stream.
반품
Stream 요청 데이터를 작성하는 데 사용하는 A입니다.
예외
메서드가 GetRequestStream() .를 가져올 Stream수 없습니다.
요청 캐시 유효성 검사기는 이 요청에 대한 응답을 캐시에서 처리할 수 있음을 나타냅니다. 그러나 데이터를 쓰는 요청은 캐시를 사용하지 않아야 합니다. 이 예외는 잘못 구현된 사용자 지정 캐시 유효성 검사기를 사용하는 경우에 발생할 수 있습니다.
GET Method 또는 HEAD 속성입니다.
-또는-
KeepAlive is true, AllowWriteStreamBuffering is false, ContentLength is -1, SendChunked is false, 및 Method POST 또는 PUT입니다.
설명
주의
WebRequest, HttpWebRequest, ServicePoint및 WebClient 사용되지 않으므로 새 개발에 사용하면 안 됩니다.
HttpClient를 대신 사용하세요.
메서드는 GetRequestStream 데이터를 보내는 데 사용할 스트림을 HttpWebRequest 반환하고 스트림과 연결된 스트림을 출력합니다 TransportContext . 개체가 Stream 반환된 후 메서드를 HttpWebRequest 사용하여 Stream.Write 데이터를 보낼 수 있습니다.
확장된 보호가 포함된 통합 Windows 인증 사용하는 일부 애플리케이션은 기본 TLS 채널에서 CBT(채널 바인딩 토큰)를 검색하기 위해 HttpWebRequest 사용하는 전송 계층을 쿼리할 수 있어야 할 수 있습니다. 이 메서드는 GetRequestStream 요청 본문(POST 및 PUT 요청)이 있는 HTTP 메서드에 대해 이 정보에 대한 액세스를 제공합니다. 애플리케이션이 자체 인증을 구현하고 CBT에 액세스해야 하는 경우에만 필요합니다.
애플리케이션이 속성 값을 ContentLength 설정해야 하는 경우 스트림을 검색하기 전에 이 작업을 수행해야 합니다.
메서드를 Stream.Close 호출하여 스트림을 닫고 다시 사용할 연결을 해제해야 합니다. 스트림을 닫지 않으면 애플리케이션에 연결이 부족합니다.
메모
애플리케이션은 특정 요청에 대해 동기 및 비동기 메서드를 혼합할 수 없습니다. 메서드를 호출하는 GetRequestStream 경우 메서드를 GetResponse 사용하여 응답을 검색해야 합니다.
메모
이 멤버는 애플리케이션에서 네트워크 추적을 사용하도록 설정할 때 추적 정보를 출력합니다. 자세한 내용은 .NET Framework의Network 추적 참조하세요.
추가 정보
- TransportContext
- GetChannelBinding(ChannelBindingKind)
- System.Security.Authentication.ExtendedProtection
- ChannelBinding
- 확장된 보호를 사용하여 통합된 Windows 인증