HttpWebClientProtocol Klas

Definitie

Vertegenwoordigt de basisklasse voor alle XML-webserviceclientproxy's die gebruikmaken van het HTTP-transportprotocol.

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
Overname
Afgeleid
Kenmerken

Voorbeelden

Het volgende voorbeeld is een ASP.NET webformulier, dat een XML-webservice aanroept met de naam Math. Met het webformulier binnen de EnterBtn_Click functie kan de server de client automatisch omleiden naar andere sites. Ook worden referenties voor clientverificatie, proxyinstellingen, de codering van de aanvraag en de time-out voor de aanvraag ingesteld voordat de XML-webservicemethode wordt aangeroepen.

<%@ 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>
   

Opmerkingen

De eigenschappen van deze klasse worden gebruikt om het gedrag te bepalen van het HTTP-aanvraagobject dat wordt gebruikt voor het verzenden van de XML-webserviceaanvraag en -reactie. De eigenschappen zijn toegewezen aan eigenschappen die op HttpWebRequest.

Als u wilt communiceren met een XML-webservice met behulp van HTTP, moet u een proxyklasse maken die indirect of rechtstreeks afkomstig is van HttpWebClientProtocol de XML-webservice. In plaats van de proxyklasse handmatig te maken, kunt u het hulpprogramma Wsdl.exe gebruiken om een proxyklasse te maken voor de servicebeschrijving van een bepaalde XML-webservice.

Omdat HttpWebClientProtocol de basisklasse is voor alle proxyklassen, bevinden de eigenschappen zich in uw proxyklassen. Deze eigenschappen zijn handig voor het beheren van het aanvraaggedrag van het onderliggende transport. Gebruik bijvoorbeeld de eigenschap voor het Proxy aanroepen van XML-webservices via een firewall. Veel van deze eigenschappen worden gebruikt om de HttpWebRequest webaanvraag te initialiseren.

SoapHttpClientProtocol, HttpGetClientProtocolen HttpPostClientProtocol rechtstreeks of indirect afgeleid van het verlenen van HttpWebClientProtocol ondersteuning voor SOAP, HTTP-GET en HTTP-POST.

Constructors

Name Description
HttpWebClientProtocol()

Initialiseert een nieuw exemplaar van de HttpWebClientProtocol klasse.

Eigenschappen

Name Description
AllowAutoRedirect

Hiermee wordt opgehaald of ingesteld of de client automatisch serveromleidingen volgt.

CanRaiseEvents

Hiermee wordt een waarde opgehaald die aangeeft of het onderdeel een gebeurtenis kan genereren.

(Overgenomen van Component)
ClientCertificates

Hiermee haalt u de verzameling clientcertificaten op.

ConnectionGroupName

Hiermee haalt u de naam van de verbindingsgroep voor de aanvraag op of stelt u deze in.

(Overgenomen van WebClientProtocol)
Container

Hiermee haalt u het IContainer bestand op dat de Component.

(Overgenomen van Component)
CookieContainer

Hiermee haalt u de verzameling cookies op of stelt u deze in.

Credentials

Hiermee haalt u beveiligingsreferenties op voor clientverificatie van xml-webservices of stelt u deze in.

(Overgenomen van WebClientProtocol)
DesignMode

Hiermee wordt een waarde opgehaald die aangeeft of de Component momenteel in de ontwerpmodus is.

(Overgenomen van Component)
EnableDecompression

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of decompressie hiervoor is ingeschakeld HttpWebClientProtocol.

Events

Hiermee haalt u de lijst met gebeurtenis-handlers op die aan dit Componentbestand zijn gekoppeld.

(Overgenomen van Component)
PreAuthenticate

Hiermee haalt u op of stelt u in of verificatie vooraf is ingeschakeld.

(Overgenomen van WebClientProtocol)
Proxy

Hiermee haalt u proxygegevens op voor het maken van een XML-webserviceaanvraag via een firewall.

RequestEncoding

Hiermee Encoding wordt de clientaanvraag naar de XML-webservice verzonden.

(Overgenomen van WebClientProtocol)
Site

Haalt of stelt de ISite van de Component.

(Overgenomen van Component)
Timeout

Geeft de tijd aan waarop een XML-webserviceclient wacht tot het antwoord op een synchrone XML-webserviceaanvraag binnenkomt (in milliseconden).

(Overgenomen van WebClientProtocol)
UnsafeAuthenticatedConnectionSharing

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of delen van verbindingen is ingeschakeld wanneer de client NTLM-verificatie gebruikt om verbinding te maken met de webserver die als host fungeert voor de XML-webservice.

Url

Haalt de basis-URL van de XML-webservice op die de client aanvraagt of stelt deze in.

(Overgenomen van WebClientProtocol)
UseDefaultCredentials

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of de Credentials eigenschap moet worden ingesteld op de waarde van de DefaultCredentials eigenschap.

(Overgenomen van WebClientProtocol)
UserAgent

Hiermee wordt de waarde opgehaald of ingesteld voor de header van de gebruikersagent die bij elke aanvraag wordt verzonden.

Methoden

Name Description
Abort()

Hiermee annuleert u een aanvraag naar een XML-webservicemethode.

(Overgenomen van WebClientProtocol)
CancelAsync(Object)

Annuleert een asynchrone aanroep naar een XML-webservicemethode, tenzij de aanroep al is voltooid.

CreateObjRef(Type)

Hiermee maakt u een object dat alle relevante informatie bevat die nodig is om een proxy te genereren die wordt gebruikt om te communiceren met een extern object.

(Overgenomen van MarshalByRefObject)
Dispose()

Alle resources die worden gebruikt door de Component.

(Overgenomen van Component)
Dispose(Boolean)

Publiceert de niet-beheerde resources die worden gebruikt door de Component beheerde resources en brengt eventueel de beheerde resources vrij.

(Overgenomen van Component)
Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
GenerateXmlMappings(Type, ArrayList)

Hiermee haalt u de XmlMembersMapping voor elke XML-webservicemethode op die wordt weergegeven door het opgegeven type en worden de toewijzingen opgeslagen in de opgegeven ArrayList.

GenerateXmlMappings(Type[], ArrayList)

Haalt de XmlMembersMapping voor elke XML-webservicemethode op die wordt weergegeven door de opgegeven typen en slaat de toewijzingen op in de opgegeven ArrayList, evenals in een Hashtable methode die door deze methode wordt geretourneerd.

GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetLifetimeService()

Hiermee haalt u het huidige levensduurserviceobject op waarmee het levensduurbeleid voor dit exemplaar wordt beheerd.

(Overgenomen van MarshalByRefObject)
GetService(Type)

Hiermee wordt een object geretourneerd dat een service vertegenwoordigt die wordt geleverd door of door de Component service Container.

(Overgenomen van Component)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
GetWebRequest(Uri)

Hiermee maakt u een WebRequest voor de opgegeven URI.

GetWebResponse(WebRequest, IAsyncResult)

Retourneert een antwoord van een asynchrone aanvraag naar een XML-webservicemethode.

GetWebResponse(WebRequest)

Retourneert een antwoord van een synchrone aanvraag naar een XML-webservicemethode.

InitializeLifetimeService()

Hiermee haalt u een levensduurserviceobject op om het levensduurbeleid voor dit exemplaar te beheren.

(Overgenomen van MarshalByRefObject)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
MemberwiseClone(Boolean)

Hiermee maakt u een ondiepe kopie van het huidige MarshalByRefObject object.

(Overgenomen van MarshalByRefObject)
ToString()

Retourneert een String met de naam van de Component, indien van toepassing. Deze methode mag niet worden overschreven.

(Overgenomen van Component)

gebeurtenis

Name Description
Disposed

Treedt op wanneer het onderdeel wordt verwijderd door een aanroep naar de Dispose() methode.

(Overgenomen van Component)

Van toepassing op

Veiligheid thread

De eigenschappen van deze klasse worden gekopieerd naar een nieuw exemplaar van een object voor elke aanroep van de WebRequest XML-webservicemethode. Hoewel u xml-webservicemethoden op hetzelfde WebClientProtocol exemplaar van verschillende threads tegelijk kunt aanroepen, is er geen synchronisatie uitgevoerd om ervoor te zorgen dat een consistente momentopname van de eigenschappen wordt overgebracht naar het WebRequest object. Als u daarom de eigenschappen wilt wijzigen en gelijktijdige methodeaanroepen wilt maken vanuit verschillende threads, moet u een ander exemplaar van de XML-webserviceproxy gebruiken of uw eigen synchronisatie opgeven.

Zie ook