HttpWebClientProtocol Kelas
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.
Mewakili kelas dasar untuk semua proksi klien layanan Web XML yang menggunakan protokol transportasi HTTP.
public ref class HttpWebClientProtocol abstract : System::Web::Services::Protocols::WebClientProtocol
public abstract class HttpWebClientProtocol : System.Web.Services.Protocols.WebClientProtocol
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class HttpWebClientProtocol : System.Web.Services.Protocols.WebClientProtocol
type HttpWebClientProtocol = class
inherit WebClientProtocol
[<System.Runtime.InteropServices.ComVisible(true)>]
type HttpWebClientProtocol = class
inherit WebClientProtocol
Public MustInherit Class HttpWebClientProtocol
Inherits WebClientProtocol
- Warisan
- Turunan
- Atribut
Contoh
Contoh berikut adalah Formulir Web ASP.NET, yang memanggil layanan Web XML bernama Math.
EnterBtn_Click Dalam fungsi , Formulir Web memungkinkan server untuk mengalihkan klien secara otomatis ke situs lain. Ini juga mengatur kredensial autentikasi klien, pengaturan proksi, pengodean permintaan, dan waktu habis untuk permintaan sebelum memanggil metode layanan Web XML.
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Net" %>
<html>
<script language="C#" runat="server">
void EnterBtn_Click(Object Src, EventArgs E)
{
MyMath.Math math = new MyMath.Math();
// Allow the server to redirect the request.
math.AllowAutoRedirect = true;
// Set the client-side credentials using the Credentials property.
ICredentials credentials =
new NetworkCredential("Joe","password","mydomain");
math.Credentials = credentials;
// Set the proxy server to proxyserver, set the port to 80, and specify to bypass
// the proxy server for local addresses.
IWebProxy proxyObject = new WebProxy("http://proxyserver:80",true);
math.Proxy = proxyObject;
// Set the encoding to utf-8.
math.RequestEncoding = System.Text.Encoding.UTF8;
// Set the time out to 15 seconds
math.Timeout = 15000;
int total = math.Add(Convert.ToInt32(Num1.Text),
Convert.ToInt32(Num2.Text));
Total.Text = "Total: " + total.ToString();
}
</script>
<body>
<form action="MathClient.aspx" runat=server>
Enter the two numbers you want to add and then press the Total button.
<p>
Number 1: <asp:textbox id="Num1" runat=server/> +
Number 2: <asp:textbox id="Num2" runat=server/> =
<asp:button text="Total" Onclick="EnterBtn_Click" runat=server/>
<p>
<asp:label id="Total" runat=server/>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Net" %>
<html>
<script language="VB" runat="server">
Sub EnterBtn_Click(Src As Object, E As EventArgs)
Dim math As New MyMath.Math()
' Allow the server to redirect the request.
math.AllowAutoRedirect = True
' Set the client-side credentials using the Credentials property.
Dim credentials = New NetworkCredential("Joe", "password", "mydomain")
math.Credentials = credentials
' Set the proxy server to proxyserver, set the port to 80 and specify to bypass
' the proxy server for local addresses.
Dim proxyObject = New WebProxy("http://proxyserver:80", True)
math.Proxy = proxyObject
' Set the encoding to utf-8.
math.RequestEncoding = System.Text.Encoding.UTF8
' Set the time out to 15 seconds.
math.Timeout = 15000
Dim iTotal As Integer = math.Add(Convert.ToInt32(Num1.Text), _
Convert.ToInt32(Num2.Text))
Total.Text = "Total: " & iTotal.ToString()
End Sub
</script>
<body>
<form action="MathClient.aspx" runat=server>
Enter the two numbers you want to add and then press the Total button.
<p>
Number 1: <asp:textbox id="Num1" runat=server/> +
Number 2: <asp:textbox id="Num2" runat=server/> =
<asp:button text="Total" Onclick="EnterBtn_Click" runat=server/>
<p>
<asp:label id="Total" runat=server/>
</form>
</body>
</html>
Keterangan
Properti pada kelas ini digunakan untuk mengontrol perilaku objek permintaan HTTP yang digunakan untuk mengirimkan permintaan dan respons layanan Web XML. Properti memetakan ke properti yang ditemukan di HttpWebRequest.
Untuk berkomunikasi dengan layanan Web XML menggunakan HTTP, Anda harus membuat kelas proksi yang turun secara tidak langsung atau langsung dari HttpWebClientProtocol untuk layanan Web XML. Alih-alih membuat kelas proksi secara manual, Anda dapat menggunakan alat Wsdl.exe untuk membuat kelas proksi untuk deskripsi layanan layanan Web XML tertentu.
Karena HttpWebClientProtocol adalah kelas dasar untuk semua kelas proksi, propertinya ada di kelas proksi Anda. Properti ini berguna untuk mengontrol perilaku permintaan dari transportasi yang mendasar. Misalnya, gunakan Proxy properti untuk memanggil layanan Web XML melalui firewall. Banyak dari properti ini digunakan untuk menginisialisasi HttpWebRequest yang membuat permintaan Web.
SoapHttpClientProtocol, HttpGetClientProtocol, dan HttpPostClientProtocol berasal secara langsung atau tidak langsung dari HttpWebClientProtocol untuk memberikan dukungan untuk SOAP, HTTP-GET dan HTTP-POST masing-masing.
Konstruktor
| Nama | Deskripsi |
|---|---|
| HttpWebClientProtocol() |
Menginisialisasi instans baru dari kelas HttpWebClientProtocol. |
Properti
| Nama | Deskripsi |
|---|---|
| AllowAutoRedirect |
Mendapatkan atau mengatur apakah klien secara otomatis mengikuti pengalihan server. |
| CanRaiseEvents |
Mendapatkan nilai yang menunjukkan apakah komponen dapat menaikkan peristiwa. (Diperoleh dari Component) |
| ClientCertificates |
Mendapatkan koleksi sertifikat klien. |
| ConnectionGroupName |
Mendapatkan atau mengatur nama grup koneksi untuk permintaan tersebut. (Diperoleh dari WebClientProtocol) |
| Container |
IContainer Mendapatkan yang berisi Component. (Diperoleh dari Component) |
| CookieContainer |
Mendapatkan atau mengatur koleksi cookie. |
| Credentials |
Mendapatkan atau mengatur kredensial keamanan untuk autentikasi klien layanan Web XML. (Diperoleh dari WebClientProtocol) |
| DesignMode |
Mendapatkan nilai yang menunjukkan apakah Component saat ini dalam mode desain. (Diperoleh dari Component) |
| EnableDecompression |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah dekompresi diaktifkan untuk ini HttpWebClientProtocol. |
| Events |
Mendapatkan daftar penanganan aktivitas yang dilampirkan ke ini Component. (Diperoleh dari Component) |
| PreAuthenticate |
Mendapatkan atau mengatur apakah pra-autentikasi diaktifkan. (Diperoleh dari WebClientProtocol) |
| Proxy |
Mendapatkan atau mengatur informasi proksi untuk membuat permintaan layanan Web XML melalui firewall. |
| RequestEncoding |
yang Encoding digunakan untuk membuat permintaan klien ke layanan Web XML. (Diperoleh dari WebClientProtocol) |
| Site |
Mendapatkan atau mengatur ISite dari Component. (Diperoleh dari Component) |
| Timeout |
Menunjukkan waktu klien layanan Web XML menunggu balasan permintaan layanan Web XML sinkron untuk tiba (dalam milidetik). (Diperoleh dari WebClientProtocol) |
| UnsafeAuthenticatedConnectionSharing |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah berbagi koneksi diaktifkan saat klien menggunakan autentikasi NTLM untuk menyambungkan ke server Web yang menghosting layanan Web XML. |
| Url |
Mendapatkan atau mengatur URL dasar layanan Web XML yang diminta klien. (Diperoleh dari WebClientProtocol) |
| UseDefaultCredentials |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengatur Credentials properti ke nilai DefaultCredentials properti. (Diperoleh dari WebClientProtocol) |
| UserAgent |
Mendapatkan atau menetapkan nilai untuk header agen pengguna yang dikirim dengan setiap permintaan. |
Metode
| Nama | Deskripsi |
|---|---|
| Abort() |
Membatalkan permintaan ke metode layanan Web XML. (Diperoleh dari WebClientProtocol) |
| CancelAsync(Object) |
Membatalkan panggilan asinkron ke metode layanan Web XML, kecuali panggilan telah selesai. |
| CreateObjRef(Type) |
Membuat objek yang berisi semua informasi relevan yang diperlukan untuk menghasilkan proksi yang digunakan untuk berkomunikasi dengan objek jarak jauh. (Diperoleh dari MarshalByRefObject) |
| Dispose() |
Merilis semua sumber daya yang Componentdigunakan oleh . (Diperoleh dari Component) |
| Dispose(Boolean) |
Merilis sumber daya yang tidak dikelola yang Component digunakan oleh dan secara opsional merilis sumber daya terkelola. (Diperoleh dari Component) |
| Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
| GenerateXmlMappings(Type, ArrayList) |
XmlMembersMapping Mendapatkan untuk setiap metode layanan Web XML yang diekspos oleh jenis yang ditentukan, dan menyimpan pemetaan dalam yang ditentukan ArrayList. |
| GenerateXmlMappings(Type[], ArrayList) |
XmlMembersMapping Mendapatkan untuk setiap metode layanan Web XML yang diekspos oleh jenis yang ditentukan, dan menyimpan pemetaan dalam yang ditentukan ArrayList, serta dalam Hashtable metode ini yang dikembalikan. |
| GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
| GetLifetimeService() |
Kedaluwarsa.
Mengambil objek layanan seumur hidup saat ini yang mengontrol kebijakan seumur hidup untuk instans ini. (Diperoleh dari MarshalByRefObject) |
| GetService(Type) |
Mengembalikan objek yang mewakili layanan yang disediakan oleh Component atau oleh Container. (Diperoleh dari Component) |
| GetType() |
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
| GetWebRequest(Uri) |
WebRequest Membuat untuk URI yang ditentukan. |
| GetWebResponse(WebRequest, IAsyncResult) |
Mengembalikan respons dari permintaan asinkron ke metode layanan Web XML. |
| GetWebResponse(WebRequest) |
Mengembalikan respons dari permintaan sinkron ke metode layanan Web XML. |
| InitializeLifetimeService() |
Kedaluwarsa.
Mendapatkan objek layanan seumur hidup untuk mengontrol kebijakan seumur hidup untuk instans ini. (Diperoleh dari MarshalByRefObject) |
| MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
| MemberwiseClone(Boolean) |
Membuat salinan dangkal objek saat ini MarshalByRefObject . (Diperoleh dari MarshalByRefObject) |
| ToString() |
Mengembalikan yang String berisi nama Component, jika ada. Metode ini tidak boleh ditimpa. (Diperoleh dari Component) |
Acara
| Nama | Deskripsi |
|---|---|
| Disposed |
Terjadi ketika komponen dibuang oleh panggilan ke Dispose() metode . (Diperoleh dari Component) |
Berlaku untuk
Keamanan Thread
Properti pada kelas ini disalin ke dalam instans WebRequest baru objek untuk setiap panggilan metode layanan Web XML. Meskipun Anda dapat memanggil metode layanan Web XML pada instans yang sama WebClientProtocol dari utas yang berbeda secara bersamaan, tidak ada sinkronisasi yang dilakukan untuk memastikan bahwa rekam jepret properti yang konsisten ditransfer ke WebRequest objek. Oleh karena itu, jika Anda perlu memodifikasi properti dan melakukan panggilan metode bersamaan dari utas yang berbeda, Anda harus menggunakan instans proksi layanan Web XML yang berbeda atau memberikan sinkronisasi Anda sendiri.