Sdílet prostřednictvím


HttpPostClientProtocol Třída

Definice

Základní třída pro proxy klienta webové služby XML, které používají protokol HTTP-POST.

public ref class HttpPostClientProtocol : System::Web::Services::Protocols::HttpSimpleClientProtocol
public class HttpPostClientProtocol : System.Web.Services.Protocols.HttpSimpleClientProtocol
type HttpPostClientProtocol = class
    inherit HttpSimpleClientProtocol
Public Class HttpPostClientProtocol
Inherits HttpSimpleClientProtocol
Dědičnost

Příklady

Následující příklad je třída proxy vygenerovaná nástrojem Wsdl.exe pro Math níže uvedené webové služby XML. Třída proxy je odvozena z HttpPostClientProtocoltřídy , která je odvozena z abstraktní HttpSimpleClientProtocol třídy.

#using <System.Web.Services.dll>
#using <System.Xml.dll>
#using <System.dll>

using namespace System::Diagnostics;
using namespace System::Xml::Serialization;
using namespace System;
using namespace System::Web::Services::Protocols;
using namespace System::Web::Services;

public ref class MyMath: public System::Web::Services::Protocols::HttpPostClientProtocol
{
public:

   [System::Diagnostics::DebuggerStepThroughAttribute]
   MyMath()
   {
      this->Url = "http://www.contoso.com/math.asmx";
   }

   [System::Diagnostics::DebuggerStepThroughAttribute]
   [System::Web::Services::Protocols::HttpMethodAttribute(System::Web::Services::Protocols::XmlReturnReader::typeid,
   System::Web::Services::Protocols::HtmlFormParameterWriter::typeid)]
   [returnvalue:System::Xml::Serialization::XmlRootAttribute("snippet1>",Namespace="http://www.contoso.com/",IsNullable=false)]
   int Add( String^ num1, String^ num2 )
   {
      array<Object^>^temp2 = {num1,num2};
      return  *dynamic_cast<int^>(this->Invoke( "Add", (String::Concat( this->Url, "/Add" )), temp2 ));
   }

   [System::Diagnostics::DebuggerStepThroughAttribute]
   System::IAsyncResult^ BeginAdd( String^ num1, String^ num2, System::AsyncCallback^ callback, Object^ asyncState )
   {
      array<Object^>^temp3 = {num1,num2};
      return this->BeginInvoke( "Add", (this->Url + "/Add" ), temp3, callback, asyncState );
   }

   [System::Diagnostics::DebuggerStepThroughAttribute]
   int EndAdd( System::IAsyncResult^ asyncResult )
   {
      return  *dynamic_cast<int^>(this->EndInvoke( asyncResult ));
   }
};
using System.Diagnostics;
using System.Xml.Serialization;
using System;
using System.Web.Services.Protocols;
using System.Web.Services;

public class MyMath : System.Web.Services.Protocols.HttpPostClientProtocol
{
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    public MyMath()
    {
        this.Url = "http://www.contoso.com/math.asmx";
    }

    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.Web.Services.Protocols.HttpMethodAttribute(typeof(System.Web.Services.Protocols.XmlReturnReader), typeof(System.Web.Services.Protocols.HtmlFormParameterWriter))]
    [return: System.Xml.Serialization.XmlRootAttribute("int", Namespace = "http://www.contoso.com/", IsNullable = false)]
    public int Add(string num1, string num2)
    {
        return ((int)(this.Invoke("Add", (this.Url + "/Add"),
            new object[] { num1, num2 })));
    }

    [System.Diagnostics.DebuggerStepThroughAttribute()]
    public System.IAsyncResult BeginAdd(string num1, string num2, System.AsyncCallback callback, object asyncState)
    {
        return this.BeginInvoke("Add", (this.Url + "/Add"),
            new object[] { num1, num2 }, callback, asyncState);
    }

    [System.Diagnostics.DebuggerStepThroughAttribute()]
    public int EndAdd(System.IAsyncResult asyncResult)
    {
        return ((int)(this.EndInvoke(asyncResult)));
    }
}
Option Strict On
Option Explicit On

Imports System.Diagnostics
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.Xml.Serialization

Public Class MyMath
    Inherits System.Web.Services.Protocols.HttpPostClientProtocol
    
    <System.Diagnostics.DebuggerStepThroughAttribute()>  _
    Public Sub New()
        MyBase.New
        Me.Url = "http://www.contoso.com/math.asmx"
    End Sub
    
    <System.Diagnostics.DebuggerStepThroughAttribute(),  _
     System.Web.Services.Protocols.HttpMethodAttribute(GetType(System.Web.Services.Protocols.XmlReturnReader), GetType(System.Web.Services.Protocols.HtmlFormParameterWriter))>  _
    Public Function Add(ByVal num1 As String, ByVal num2 As String) As <System.Xml.Serialization.XmlRootAttribute("int", [Namespace]:="http://www.contoso.com/", IsNullable:=false)> Integer
        Return CType(Me.Invoke("Add", (Me.Url + "/Add"), New Object() {num1, num2}),Integer)
    End Function
    
    <System.Diagnostics.DebuggerStepThroughAttribute()>  _
    Public Function BeginAdd(ByVal num1 As String, ByVal num2 As String, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult
        Return Me.BeginInvoke("Add", (Me.Url + "/Add"), New Object() {num1, num2}, callback, asyncState)
    End Function
    
    <System.Diagnostics.DebuggerStepThroughAttribute()>  _
    Public Function EndAdd(ByVal asyncResult As System.IAsyncResult) As Integer
        Return CType(Me.EndInvoke(asyncResult),Integer)
    End Function
End Class

Následující příklad je Math webová služba XML, ze které byla vytvořena předchozí třída proxy.

<%@ WebService Language="C#" Class="Math"%>
 using System.Web.Services;
 using System;
 
 public class Math {
      [ WebMethod ]
      public int Add(int num1, int num2) {
          return num1+num2;
          }
 }
<%@ WebService Language="VB" Class="Math"%>
Imports System.Web.Services
Imports System

Public Class Math
    <WebMethod()> _
    Public Function Add(num1 As Integer, num2 As Integer) As Integer
        Return num1 + num2
    End Function 'Add
End Class 'Math

Poznámky

Když klient webové služby XML používá protokol HTTP-POST, jsou parametry ve výchozím nastavení kódovány v textu HTTP pomocí pravidel kódování url a pro odpověď používá prostý XML. Tento protokol používá třídy, které jsou odvozeny od MimeFormatter ke kódování parametrů a vrácení hodnot do standardních formátů MIME. Kodéry, které se mají použít, jsou uvedené v popisu služby.

Pokud vytváříte klienta webové služby XML pomocí ASP.NET, je potřeba pro webovou službu XML, kterou chcete volat, vytvořit třídu proxy serveru odvozenou nepřímo nebo přímo z WebClientProtocol něj. Když klient webové služby XML volá pomocí protokolu HTTP, odvodit třídu HttpSimpleClientProtocolproxy , která je zase odvozena z WebClientProtocol.

HttpGetClientProtocol a HttpPostClientProtocol jsou odvozeny z HttpSimpleClientProtocol, poskytující podporu pro volání metody webové služby XML pomocí http-GET a HTTP-POST v uvedeném pořadí. Klienti volající webovou službu XML pomocí protokolu SOAP by měli být odvozeni z SoapHttpClientProtocol.

Podrobnosti o vytvoření třídy proxy naleznete v tématu Vytvoření proxy webové služby XML.

Konstruktory

HttpPostClientProtocol()

Inicializuje novou instanci HttpPostClientProtocol třídy .

Vlastnosti

AllowAutoRedirect

Získá nebo nastaví, zda klient automaticky sleduje přesměrování serveru.

(Zděděno od HttpWebClientProtocol)
CanRaiseEvents

Získá hodnotu označující, zda komponenta může vyvolat událost.

(Zděděno od Component)
ClientCertificates

Získá kolekci klientských certifikátů.

(Zděděno od HttpWebClientProtocol)
ConnectionGroupName

Získá nebo nastaví název skupiny připojení pro požadavek.

(Zděděno od WebClientProtocol)
Container

Získá objekt IContainer , který obsahuje Component.

(Zděděno od Component)
CookieContainer

Získá nebo nastaví kolekci souborů cookie.

(Zděděno od HttpWebClientProtocol)
Credentials

Získá nebo nastaví pověření zabezpečení pro ověřování klienta webové služby XML.

(Zděděno od WebClientProtocol)
DesignMode

Získá hodnotu, která označuje, zda je aktuálně v režimu návrhu Component .

(Zděděno od Component)
EnableDecompression

Získá nebo nastaví hodnotu, která označuje, zda je pro tuto HttpWebClientProtocolfunkci povolena dekomprese.

(Zděděno od HttpWebClientProtocol)
Events

Získá seznam obslužných rutin událostí, které jsou připojeny k tomuto Component.

(Zděděno od Component)
PreAuthenticate

Získá nebo nastaví, zda předběžné ověřování je povoleno.

(Zděděno od WebClientProtocol)
Proxy

Získá nebo nastaví informace proxy pro vytvoření požadavku webové služby XML přes bránu firewall.

(Zděděno od HttpWebClientProtocol)
RequestEncoding

Slouží Encoding k provedení požadavku klienta na webovou službu XML.

(Zděděno od WebClientProtocol)
Site

Získá nebo nastaví ISite z Component.

(Zděděno od Component)
Timeout

Označuje čas, kdy klient webové služby XML čeká na odpověď na synchronní požadavek webové služby XML (v milisekundách).

(Zděděno od WebClientProtocol)
UnsafeAuthenticatedConnectionSharing

Získá nebo nastaví hodnotu, která označuje, zda sdílení připojení je povoleno, když klient používá ověřování NTLM pro připojení k webovému serveru, který je hostitelem webové služby XML.

(Zděděno od HttpWebClientProtocol)
Url

Získá nebo nastaví základní adresu URL webové služby XML klient požaduje.

(Zděděno od WebClientProtocol)
UseDefaultCredentials

Získá nebo nastaví hodnotu, která označuje, zda nastavit Credentials vlastnost na hodnotu DefaultCredentials vlastnosti.

(Zděděno od WebClientProtocol)
UserAgent

Získá nebo nastaví hodnotu pro hlavičku uživatelského agenta, která se odešle s každou žádostí.

(Zděděno od HttpWebClientProtocol)

Metody

Abort()

Zruší požadavek na metodu webové služby XML.

(Zděděno od WebClientProtocol)
BeginInvoke(String, String, Object[], AsyncCallback, Object)

Spustí asynchronní vyvolání metody webové služby XML.

(Zděděno od HttpSimpleClientProtocol)
CancelAsync(Object)

Zruší asynchronní volání metody webové služby XML, pokud volání již dokončeno.

(Zděděno od HttpWebClientProtocol)
CreateObjRef(Type)

Vytvoří objekt, který obsahuje všechny relevantní informace potřebné k vygenerování proxy sloužící ke komunikaci se vzdáleným objektem.

(Zděděno od MarshalByRefObject)
Dispose()

Uvolní všechny prostředky používané nástrojem Component.

(Zděděno od Component)
Dispose(Boolean)

Uvolní nespravované prostředky používané nástrojem Component a volitelně uvolní spravované prostředky.

(Zděděno od Component)
EndInvoke(IAsyncResult)

Dokončí asynchronní vyvolání metody webové služby XML pomocí protokolu HTTP.

(Zděděno od HttpSimpleClientProtocol)
Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetLifetimeService()
Zastaralé.

Načte aktuální životnost objektu služby, který řídí zásady životnosti pro tuto instanci.

(Zděděno od MarshalByRefObject)
GetService(Type)

Vrátí objekt, který představuje službu poskytovanou objektem Component nebo .Container

(Zděděno od Component)
GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
GetWebRequest(Uri)

Vytvoří WebRequest instanci pro zadaný identifikátor URI.

GetWebResponse(WebRequest)

Vrátí odpověď ze synchronního požadavku na metodu webové služby XML.

(Zděděno od HttpWebClientProtocol)
GetWebResponse(WebRequest, IAsyncResult)

Vrátí odpověď z asynchronního požadavku na metodu webové služby XML.

(Zděděno od HttpWebClientProtocol)
InitializeLifetimeService()
Zastaralé.

Získá životnost objektu služby, který řídí zásady životnosti pro tuto instanci.

(Zděděno od MarshalByRefObject)
Invoke(String, String, Object[])

Vyvolá metodu webové služby XML pomocí protokolu HTTP.

(Zděděno od HttpSimpleClientProtocol)
InvokeAsync(String, String, Object[], SendOrPostCallback)

Vyvolá zadanou metodu asynchronně.

(Zděděno od HttpSimpleClientProtocol)
InvokeAsync(String, String, Object[], SendOrPostCallback, Object)

Vyvolá zadanou metodu asynchronně při zachování přidruženého stavu.

(Zděděno od HttpSimpleClientProtocol)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
MemberwiseClone(Boolean)

Vytvoří mělkou kopii aktuálního MarshalByRefObject objektu.

(Zděděno od MarshalByRefObject)
ToString()

String Vrátí hodnotu obsahující název , Componentpokud existuje. Tato metoda by neměla být přepsána.

(Zděděno od Component)

Událost

Disposed

Vyvolá se, když je komponenta uvolněna voláním Dispose() metody .

(Zděděno od Component)

Platí pro

Viz také