Udostępnij za pośrednictwem


HttpWebClientProtocol Klasa

Definicja

Reprezentuje klasę bazową dla wszystkich serwerów proxy klienta usługi sieci Web XML korzystających z protokołu transportu 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
Dziedziczenie
Pochodne
Atrybuty

Przykłady

Poniższy przykład to ASP.NET formularz internetowy, który wywołuje usługę sieci Web XML o nazwie Math. EnterBtn_Click W ramach funkcji formularz internetowy umożliwia serwerowi automatyczne przekierowywanie klienta do innych lokacji. Ustawia również poświadczenia uwierzytelniania klienta, ustawienia serwera proxy, kodowanie żądania i limit czasu żądania przed wywołaniem metody usługi sieci 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>
   

Uwagi

Właściwości tej klasy służą do kontrolowania zachowania obiektu żądania HTTP używanego do przesyłania żądania sieci Web XML i odpowiedzi. Właściwości są mapowania na właściwości znalezione w pliku HttpWebRequest.

Aby komunikować się z usługą sieci Web XML przy użyciu protokołu HTTP, należy utworzyć klasę proxy wyprowadzającą pośrednio lub bezpośrednio z HttpWebClientProtocol usługi sieci Web XML. Zamiast ręcznie tworzyć klasę serwera proxy, możesz użyć narzędzia Wsdl.exe do utworzenia klasy serwera proxy dla danego opisu usługi sieci Web XML.

Ponieważ HttpWebClientProtocol jest klasą bazową dla wszystkich klas serwera proxy, jej właściwości znajdują się w klasach serwera proxy. Te właściwości są przydatne do kontrolowania zachowania żądania bazowego transportu. Na przykład użyj Proxy właściwości do wywoływania usług sieci Web XML za pośrednictwem zapory. Wiele z tych właściwości służy do inicjowania HttpWebRequest żądania sieci Web.

SoapHttpClientProtocol, HttpGetClientProtocoli HttpPostClientProtocol pochodzą bezpośrednio lub pośrednio z HttpWebClientProtocol , aby zapewnić obsługę protokołu SOAP, HTTP-GET i HTTP-POST odpowiednio.

Konstruktory

HttpWebClientProtocol()

Inicjuje nowe wystąpienie klasy HttpWebClientProtocol.

Właściwości

AllowAutoRedirect

Pobiera lub ustawia, czy klient automatycznie śledzi przekierowania serwera.

CanRaiseEvents

Pobiera wartość wskazującą, czy składnik może zgłosić zdarzenie.

(Odziedziczone po Component)
ClientCertificates

Pobiera kolekcję certyfikatów klienta.

ConnectionGroupName

Pobiera lub ustawia nazwę grupy połączeń dla żądania.

(Odziedziczone po WebClientProtocol)
Container

Pobiera element IContainer zawierający element Component.

(Odziedziczone po Component)
CookieContainer

Pobiera lub ustawia kolekcję plików cookie.

Credentials

Pobiera lub ustawia poświadczenia zabezpieczeń dla uwierzytelniania klienta usługi sieci Web XML.

(Odziedziczone po WebClientProtocol)
DesignMode

Pobiera wartość wskazującą, czy Component element jest obecnie w trybie projektowania.

(Odziedziczone po Component)
EnableDecompression

Pobiera lub ustawia wartość wskazującą, czy dekompresja jest włączona dla tego elementu HttpWebClientProtocol.

Events

Pobiera listę programów obsługi zdarzeń dołączonych do tego Componentelementu .

(Odziedziczone po Component)
PreAuthenticate

Pobiera lub ustawia, czy jest włączone wstępne uwierzytelnianie.

(Odziedziczone po WebClientProtocol)
Proxy

Pobiera lub ustawia informacje o serwerze proxy na potrzeby tworzenia żądania usługi sieci Web XML za pośrednictwem zapory.

RequestEncoding

Służy Encoding do żądania klienta do usługi sieci Web XML.

(Odziedziczone po WebClientProtocol)
Site

Pobiera lub ustawia ISite element .Component

(Odziedziczone po Component)
Timeout

Wskazuje czas oczekiwania klienta usługi sieci Web XML na odpowiedź na synchroniczne żądanie usługi sieci Web XML do odebrania (w milisekundach).

(Odziedziczone po WebClientProtocol)
UnsafeAuthenticatedConnectionSharing

Pobiera lub ustawia wartość wskazującą, czy udostępnianie połączeń jest włączone, gdy klient używa uwierzytelniania NTLM w celu nawiązania połączenia z serwerem sieci Web hostujących usługę sieci Web XML.

Url

Pobiera lub ustawia podstawowy adres URL usługi sieci Web XML, którego żąda klient.

(Odziedziczone po WebClientProtocol)
UseDefaultCredentials

Pobiera lub ustawia wartość wskazującą, czy właściwość ma być ustawiona Credentials na wartość DefaultCredentials właściwości.

(Odziedziczone po WebClientProtocol)
UserAgent

Pobiera lub ustawia wartość nagłówka agenta użytkownika, który jest wysyłany z każdym żądaniem.

Metody

Abort()

Anuluje żądanie do metody usługi sieci Web XML.

(Odziedziczone po WebClientProtocol)
CancelAsync(Object)

Anuluje asynchroniczne wywołanie metody usługi sieci Web XML, chyba że wywołanie zostało już ukończone.

CreateObjRef(Type)

Tworzy obiekt zawierający wszystkie istotne informacje wymagane do wygenerowania serwera proxy używanego do komunikowania się z obiektem zdalnym.

(Odziedziczone po MarshalByRefObject)
Dispose()

Zwalnia wszelkie zasoby używane przez element Component.

(Odziedziczone po Component)
Dispose(Boolean)

Zwalnia zasoby niezarządzane używane przez element Component i opcjonalnie zwalnia zasoby zarządzane.

(Odziedziczone po Component)
Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GenerateXmlMappings(Type, ArrayList)

XmlMembersMapping Pobiera dla każdej metody usługi sieci Web XML uwidocznionej przez określony typ i przechowuje mapowania w określonym obiekcie ArrayList.

GenerateXmlMappings(Type[], ArrayList)

XmlMembersMapping Pobiera dla każdej metody usługi sieci Web XML uwidocznionej przez określone typy i przechowuje mapowania w określonej metodzieArrayList, a także w metodzie zwracanej Hashtable przez tę metodę.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetLifetimeService()
Przestarzałe.

Pobiera bieżący obiekt usługi okresu istnienia, który kontroluje zasady okresu istnienia dla tego wystąpienia.

(Odziedziczone po MarshalByRefObject)
GetService(Type)

Zwraca obiekt reprezentujący usługę dostarczaną przez Component obiekt lub przez obiekt Container.

(Odziedziczone po Component)
GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
GetWebRequest(Uri)

Tworzy element WebRequest dla określonego identyfikatora URI.

GetWebResponse(WebRequest)

Zwraca odpowiedź z synchronicznego żądania do metody usługi sieci Web XML.

GetWebResponse(WebRequest, IAsyncResult)

Zwraca odpowiedź z asynchronicznego żądania do metody usługi sieci Web XML.

InitializeLifetimeService()
Przestarzałe.

Uzyskuje obiekt usługi okresu istnienia, aby kontrolować zasady okresu istnienia dla tego wystąpienia.

(Odziedziczone po MarshalByRefObject)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
MemberwiseClone(Boolean)

Tworzy płytkią kopię bieżącego MarshalByRefObject obiektu.

(Odziedziczone po MarshalByRefObject)
ToString()

Zwraca wartość String zawierającą nazwę Componentobiektu , jeśli istnieje. Ta metoda nie powinna być zastępowana.

(Odziedziczone po Component)

Zdarzenia

Disposed

Występuje, gdy składnik jest usuwany przez wywołanie Dispose() metody .

(Odziedziczone po Component)

Dotyczy

Bezpieczeństwo wątkowe

Właściwości tej klasy są kopiowane do nowego wystąpienia WebRequest obiektu dla każdego wywołania metody usługi sieci Web XML. Chociaż można wywołać metody usługi sieci Web XML w tym samym WebClientProtocol wystąpieniu z różnych wątków w tym samym czasie, nie ma synchronizacji, aby upewnić się, że spójna migawka właściwości zostanie przeniesiona do WebRequest obiektu. W związku z tym, jeśli musisz zmodyfikować właściwości i wykonać współbieżne wywołania metody z różnych wątków, należy użyć innego wystąpienia serwera proxy usługi sieci Web XML lub zapewnić własną synchronizację.

Zobacz też