HttpWebRequest.GetRequestStream Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan objek yang Stream akan digunakan untuk menulis data permintaan.
Overload
GetRequestStream() |
Mendapatkan objek yang Stream akan digunakan untuk menulis data permintaan. |
GetRequestStream(TransportContext) |
Mendapatkan objek yang Stream akan digunakan untuk menulis data permintaan dan menghasilkan yang TransportContext terkait dengan aliran. |
GetRequestStream()
- Sumber:
- HttpWebRequest.cs
- Sumber:
- HttpWebRequest.cs
- Sumber:
- HttpWebRequest.cs
Mendapatkan objek yang Stream akan digunakan untuk menulis data permintaan.
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
Mengembalikan
untuk Stream digunakan untuk menulis data permintaan.
Pengecualian
Properti Method ini adalah GET atau HEAD.
-atau-
KeepAliveadalah true
, AllowWriteStreamBuffering adalah , ContentLength adalah false
-1, SendChunked adalah false
, dan Method MERUPAKAN POST atau PUT.
Metode GetRequestStream() ini disebut lebih dari sekali.
-atau-
TransferEncoding diatur ke nilai dan SendChunked adalah false
.
Validator cache permintaan menunjukkan bahwa respons untuk permintaan ini dapat dilayani dari cache; namun, permintaan yang menulis data tidak boleh menggunakan cache. Pengecualian ini dapat terjadi jika Anda menggunakan validator cache kustom yang salah diimplementasikan.
Abort() sebelumnya dipanggil.
-atau-
Periode waktu habis untuk permintaan kedaluwarsa.
-atau-
Terjadi kesalahan saat memproses permintaan ini.
Dalam aplikasi .NET Compact Framework, aliran permintaan dengan panjang konten nol tidak diperoleh dan ditutup dengan benar. Untuk informasi selengkapnya tentang menangani permintaan panjang konten nol, lihat Pemrograman Jaringan di .NET Compact Framework.
Contoh
Contoh kode berikut menggunakan metode untuk mengembalikan instans GetRequestStream aliran.
// 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 = String::Concat( "firstone= ", inputData );
ASCIIEncoding^ encoding = gcnew ASCIIEncoding;
array<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 ("\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()
Keterangan
Metode GetRequestStream mengembalikan aliran yang digunakan untuk mengirim data untuk HttpWebRequest. Stream Setelah objek dikembalikan, Anda dapat mengirim data dengan HttpWebRequest menggunakan Stream.Write metode .
Jika aplikasi perlu mengatur nilai ContentLength properti, maka ini harus dilakukan sebelum mengambil aliran.
Anda harus memanggil Stream.Close metode untuk menutup aliran dan merilis koneksi untuk digunakan kembali. Kegagalan untuk menutup aliran menyebabkan aplikasi Anda kehabisan koneksi.
Catatan
Aplikasi Anda tidak dapat mencampur metode sinkron dan asinkron untuk permintaan tertentu. Jika Anda memanggil GetRequestStream metode , Anda harus menggunakan GetResponse metode untuk mengambil respons.
Catatan
Anggota ini mengeluarkan informasi pelacakan saat Anda mengaktifkan pelacakan jaringan di aplikasi Anda. Untuk informasi selengkapnya, lihat Pelacakan Jaringan di .NET Framework.
Lihat juga
Berlaku untuk
GetRequestStream(TransportContext)
- Sumber:
- HttpWebRequest.cs
- Sumber:
- HttpWebRequest.cs
- Sumber:
- HttpWebRequest.cs
Mendapatkan objek yang Stream akan digunakan untuk menulis data permintaan dan menghasilkan yang TransportContext terkait dengan aliran.
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
Parameter
- context
- TransportContext
TransportContext untuk Stream.
Mengembalikan
untuk Stream digunakan untuk menulis data permintaan.
Pengecualian
Metode GetRequestStream() tidak dapat memperoleh Stream.
Metode GetRequestStream() ini disebut lebih dari sekali.
-atau-
TransferEncoding diatur ke nilai dan SendChunked adalah false
.
Validator cache permintaan menunjukkan bahwa respons untuk permintaan ini dapat dilayani dari cache; namun, permintaan yang menulis data tidak boleh menggunakan cache. Pengecualian ini dapat terjadi jika Anda menggunakan validator cache kustom yang salah diimplementasikan.
Properti Method ini adalah GET atau HEAD.
-atau-
KeepAliveadalah true
, AllowWriteStreamBuffering adalah , ContentLength adalah false
-1, SendChunked adalah false
, dan Method MERUPAKAN POST atau PUT.
Abort() sebelumnya dipanggil.
-atau-
Periode waktu habis untuk permintaan kedaluwarsa.
-atau-
Terjadi kesalahan saat memproses permintaan ini.
Keterangan
Metode mengembalikan GetRequestStream aliran yang digunakan untuk mengirim data untuk HttpWebRequest output dan yang TransportContext terkait dengan aliran. Stream Setelah objek dikembalikan, Anda dapat mengirim data dengan HttpWebRequest menggunakan Stream.Write metode .
Beberapa aplikasi yang menggunakan autentikasi Windows terintegrasi dengan perlindungan yang diperluas mungkin harus dapat mengkueri lapisan transportasi yang digunakan untuk HttpWebRequest mengambil token pengikatan saluran (CBT) dari saluran TLS yang mendasar. Metode ini GetRequestStream menyediakan akses ke informasi ini untuk metode HTTP yang memiliki isi permintaan (POST
dan PUT
permintaan). Ini hanya diperlukan jika aplikasi menerapkan autentikasinya sendiri dan membutuhkan akses ke CBT.
Jika aplikasi perlu mengatur nilai ContentLength properti, maka ini harus dilakukan sebelum mengambil aliran.
Anda harus memanggil Stream.Close metode untuk menutup aliran dan merilis koneksi untuk digunakan kembali. Kegagalan untuk menutup aliran menyebabkan aplikasi Anda kehabisan koneksi.
Catatan
Aplikasi Anda tidak dapat mencampur metode sinkron dan asinkron untuk permintaan tertentu. Jika Anda memanggil GetRequestStream metode , Anda harus menggunakan GetResponse metode untuk mengambil respons.
Catatan
Anggota ini mengeluarkan informasi pelacakan saat Anda mengaktifkan pelacakan jaringan di aplikasi Anda. Untuk informasi selengkapnya, lihat Pelacakan Jaringan di .NET Framework.
Lihat juga
- TransportContext
- GetChannelBinding(ChannelBindingKind)
- System.Security.Authentication.ExtendedProtection
- ChannelBinding
- Autentikasi Windows Terintegrasi dengan Perlindungan yang Diperluas
Berlaku untuk
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk