HttpWebRequest.SendChunked Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví hodnotu, která označuje, zda se mají odesílat data v segmentech do internetového prostředku.
public:
property bool SendChunked { bool get(); void set(bool value); };
public bool SendChunked { get; set; }
member this.SendChunked : bool with get, set
Public Property SendChunked As Boolean
Hodnota vlastnosti
true
odesílat data do internetového prostředku v segmentech; v opačném případě . false
Výchozí hodnota je false
.
Výjimky
Požadavek byl zahájen voláním GetRequestStream()metody , BeginGetRequestStream(AsyncCallback, Object), GetResponse()nebo BeginGetResponse(AsyncCallback, Object) .
Příklady
Následující příklad kódu nastaví SendChunked vlastnost na true
, aby data bylo možné odesílat do internetového prostředku v segmentech.
// A new 'HttpWebRequest' object is created.
HttpWebRequest^ myHttpWebRequest = (HttpWebRequest^)( WebRequest::Create( myUri ) );
myHttpWebRequest->SendChunked = true;
// 'TransferEncoding' property is set to 'gzip'.
myHttpWebRequest->TransferEncoding = "gzip";
Console::WriteLine( "\nPlease Enter the data to be posted to the (http://<machine name>/CodeSnippetTest::asp) uri:" );
String^ inputData = Console::ReadLine();
String^ postData = String::Concat( "testdata= ", inputData );
// 'Method' property of 'HttpWebRequest' class is set to POST.
myHttpWebRequest->Method = "POST";
ASCIIEncoding^ encodedData = gcnew ASCIIEncoding;
array<Byte>^ byteArray = encodedData->GetBytes( postData );
// 'ContentType' property of the 'HttpWebRequest' class is set to S"application/x-www-form-urlencoded".
myHttpWebRequest->ContentType = "application/x-www-form-urlencoded";
// 'ContentLength' property is set to Length of the data to be posted.
myHttpWebRequest->ContentLength = byteArray->Length;
Stream^ newStream = myHttpWebRequest->GetRequestStream();
newStream->Write( byteArray, 0, byteArray->Length );
newStream->Close();
Console::WriteLine( "\nData has been posted to the Uri\n\nPlease wait for the response.........." );
// The response object of 'HttpWebRequest' is assigned to a 'HttpWebResponse' variable.
HttpWebResponse^ myHttpWebResponse = (HttpWebResponse^)( myHttpWebRequest->GetResponse() );
// Displaying the contents of the page to the console
Stream^ streamResponse = myHttpWebResponse->GetResponseStream();
StreamReader^ streamRead = gcnew StreamReader( streamResponse );
array<Char>^ readBuff = gcnew array<Char>(256);
int count = streamRead->Read( readBuff, 0, 256 );
Console::WriteLine( "\nThe contents of the HTML page are : " );
while ( count > 0 )
{
String^ outputData = gcnew String( readBuff,0,count );
Console::WriteLine( outputData );
count = streamRead->Read( readBuff, 0, 256 );
}
streamRead->Close();
streamResponse->Close();
myHttpWebResponse->Close();
// A new 'HttpWebRequest' object is created.
HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(myUri);
myHttpWebRequest.SendChunked = true;
// 'TransferEncoding' property is set to 'gzip'.
myHttpWebRequest.TransferEncoding = "gzip";
Console.WriteLine("\nPlease Enter the data to be posted to the (http://<machine name>/CodeSnippetTest.asp) uri:");
string inputData = Console.ReadLine();
string postData = "testdata=" + inputData;
// 'Method' property of 'HttpWebRequest' class is set to POST.
myHttpWebRequest.Method = "POST";
ASCIIEncoding encodedData = new ASCIIEncoding();
byte[] byteArray = encodedData.GetBytes(postData);
// 'ContentType' property of the 'HttpWebRequest' class is set to "application/x-www-form-urlencoded".
myHttpWebRequest.ContentType = "application/x-www-form-urlencoded";
// 'ContentLength' property is set to Length of the data to be posted.
myHttpWebRequest.ContentLength = byteArray.Length;
Stream newStream = myHttpWebRequest.GetRequestStream();
newStream.Write(byteArray, 0, byteArray.Length);
newStream.Close();
Console.WriteLine("\nData has been posted to the Uri\n\nPlease wait for the response..........");
// The response object of 'HttpWebRequest' is assigned to a 'HttpWebResponse' variable.
HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
// Displaying the contents of the page to the console
Stream streamResponse = myHttpWebResponse.GetResponseStream();
StreamReader streamRead = new StreamReader(streamResponse);
Char[] readBuff = new Char[256];
int count = streamRead.Read(readBuff, 0, 256);
Console.WriteLine("\nThe contents of the HTML page are : ");
while (count > 0)
{
String outputData = new String(readBuff, 0, count);
Console.WriteLine(outputData);
count = streamRead.Read(readBuff, 0, 256);
}
// Release the response object resources.
streamRead.Close();
streamResponse.Close();
myHttpWebResponse.Close();
' A new 'HttpWebRequest' object is created.
Dim myHttpWebRequest As HttpWebRequest = CType(WebRequest.Create(myUri), HttpWebRequest)
myHttpWebRequest.SendChunked = True
' 'TransferEncoding' property is set to 'gzip'.
myHttpWebRequest.TransferEncoding = "gzip"
Console.WriteLine(ControlChars.Cr + "Please Enter the data to be posted to the (http://" + ChrW(60) + "machine name" + ChrW(62) + "/CodeSnippetTest.asp) uri:")
Dim inputData As String = Console.ReadLine()
Dim postData As String = "testdata" + ChrW(61) + inputData
' 'Method' property of 'HttpWebRequest' class is set to POST.
myHttpWebRequest.Method = "POST"
Dim encodedData As New ASCIIEncoding()
Dim byteArray As Byte() = encodedData.GetBytes(postData)
' 'ContentType' property of the 'HttpWebRequest' class is set to "application/x-www-form-urlencoded".
myHttpWebRequest.ContentType = "application/x-www-form-urlencoded"
' 'ContentLength' property is set to Length of the data to be posted.
myHttpWebRequest.ContentLength = byteArray.Length
Dim newStream As Stream = myHttpWebRequest.GetRequestStream()
newStream.Write(byteArray, 0, byteArray.Length)
newStream.Close()
Console.WriteLine(ControlChars.Cr + "Data has been posted to the Uri" + ControlChars.Cr + ControlChars.Cr + "Please wait for the response..........")
' The response object of 'HttpWebRequest' is assigned to a 'HttpWebResponse' variable.
Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)
' Displaying the contents of the page to the console
Dim streamResponse As Stream = myHttpWebResponse.GetResponseStream()
Dim streamRead As New StreamReader(streamResponse)
Dim readBuff(256) As [Char]
Dim count As Integer = streamRead.Read(readBuff, 0, 256)
Console.WriteLine(ControlChars.Cr + "The contents of the HTML page are : ")
While count > 0
Dim outputData As New [String](readBuff, 0, count)
Console.WriteLine(outputData)
count = streamRead.Read(readBuff, 0, 256)
End While
' Release the response object resources.
streamRead.Close()
streamResponse.Close()
myHttpWebResponse.Close()
Poznámky
Pokud SendChunked je true
, požadavek odešle data do internetového prostředku v segmentech. Internetový prostředek musí podporovat příjem blokovaných dat.
SendChunked Změna vlastnosti po spuštění požadavku voláním GetRequestStreammetody , BeginGetRequestStream, GetResponsenebo BeginGetResponse vyvolá InvalidOperationException.
Platí pro
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro