HttpPostClientProtocol Classe

Definição

A classe base para proxies de cliente do serviço Web XML que usam o protocolo 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
Herança

Exemplos

O exemplo a seguir é uma classe proxy gerada pelo utilitário Wsdl.exe para o Math serviço Web XML abaixo. A classe proxy deriva de HttpPostClientProtocol, que deriva da classe abstrata HttpSimpleClientProtocol .

#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

O exemplo a seguir é o Math serviço Web XML, do qual a classe proxy anterior foi criada.

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

Comentários

Quando um cliente de serviço Web XML usa o protocolo HTTP-POST, por padrão, os parâmetros são codificados no corpo HTTP usando regras de codificação de URL e usam XML simples para a resposta. Esse protocolo usa classes que derivam para MimeFormatter codificar parâmetros e retornar valores em formatos MIME padrão. Os codificadores a serem usados são especificados na descrição do serviço.

Se você estiver criando um cliente de serviço Web XML usando ASP.NET, uma classe proxy derivada indiretamente ou diretamente de WebClientProtocol precisa ser criada para o serviço Web XML que você deseja chamar. Quando o cliente do serviço Web XML estiver chamando usando HTTP, derive a classe HttpSimpleClientProtocolproxy, que, por sua vez, deriva de WebClientProtocol.

HttpGetClientProtocol e HttpPostClientProtocol derivam de HttpSimpleClientProtocol, fornecendo o suporte para chamar um método de serviço Web XML usando HTTP-GET e HTTP-POST, respectivamente. Os clientes que chamam um serviço Web XML usando SOAP devem derivar de SoapHttpClientProtocol.

Para obter detalhes sobre como criar uma classe proxy, consulte Criando um Proxy de Serviço Web XML.

Construtores

HttpPostClientProtocol()

Inicializa uma nova instância da classe HttpPostClientProtocol.

Propriedades

AllowAutoRedirect

Obtém ou define se o cliente segue automaticamente redirecionamentos do servidor.

(Herdado de HttpWebClientProtocol)
CanRaiseEvents

Obtém um valor que indica se o componente pode acionar um evento.

(Herdado de Component)
ClientCertificates

Obtém a coleção de certificados do cliente.

(Herdado de HttpWebClientProtocol)
ConnectionGroupName

Obtém ou define o nome do grupo de conexões para a solicitação.

(Herdado de WebClientProtocol)
Container

Obtém o IContainer que contém o Component.

(Herdado de Component)
CookieContainer

Obtém ou define a coleção de cookies.

(Herdado de HttpWebClientProtocol)
Credentials

Obtém ou define as credenciais de segurança para a autenticação de cliente do serviço Web XML.

(Herdado de WebClientProtocol)
DesignMode

Obtém um valor que indica se o Component está no modo de design no momento.

(Herdado de Component)
EnableDecompression

Obtém ou define um valor que indica se a descompactação está habilitada para este HttpWebClientProtocol.

(Herdado de HttpWebClientProtocol)
Events

Obtém a lista de manipuladores de eventos que estão anexados a este Component.

(Herdado de Component)
PreAuthenticate

Obtém ou define se a pré-autenticação está habilitada.

(Herdado de WebClientProtocol)
Proxy

Obtém ou define informações de proxy para fazer uma solicitação de serviço Web XML por um firewall.

(Herdado de HttpWebClientProtocol)
RequestEncoding

O Encoding usado para fazer a solicitação do cliente para o serviço Web XML.

(Herdado de WebClientProtocol)
Site

Obtém ou define o ISite do Component.

(Herdado de Component)
Timeout

Indica o tempo que um cliente do serviço Web XML aguarda a resposta até que uma solicitação síncrona de serviço Web XML seja recebida (em milissegundos).

(Herdado de WebClientProtocol)
UnsafeAuthenticatedConnectionSharing

Obtém ou define um valor que indica se o compartilhamento de conexão está habilitado quando o cliente usa a autenticação NTLM para se conectar ao servidor Web que hospeda o serviço Web XML.

(Herdado de HttpWebClientProtocol)
Url

Obtém ou define a URL base do serviço Web XML que está sendo solicitada pelo cliente.

(Herdado de WebClientProtocol)
UseDefaultCredentials

Obtém ou define um valor que indica se deseja definir a propriedade Credentials para o valor da propriedade DefaultCredentials.

(Herdado de WebClientProtocol)
UserAgent

Obtém ou define o valor para o cabeçalho de agente do usuário enviado com cada solicitação.

(Herdado de HttpWebClientProtocol)

Métodos

Abort()

Cancela uma solicitação para um método de serviço Web XML.

(Herdado de WebClientProtocol)
BeginInvoke(String, String, Object[], AsyncCallback, Object)

Inicia uma invocação assíncrona de um método de um serviço Web XML.

(Herdado de HttpSimpleClientProtocol)
CancelAsync(Object)

Cancela uma chamada assíncrona para um método de serviço Web XML, a menos que a chamada já tenha sido concluída.

(Herdado de HttpWebClientProtocol)
CreateObjRef(Type)

Cria um objeto que contém todas as informações relevantes necessárias para gerar um proxy usado para se comunicar com um objeto remoto.

(Herdado de MarshalByRefObject)
Dispose()

Libera todos os recursos usados pelo Component.

(Herdado de Component)
Dispose(Boolean)

Libera os recursos não gerenciados usados pelo Component e opcionalmente libera os recursos gerenciados.

(Herdado de Component)
EndInvoke(IAsyncResult)

Conclui uma invocação assíncrona de um método de serviço Web XML usando HTTP.

(Herdado de HttpSimpleClientProtocol)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetLifetimeService()
Obsoleto.

Recupera o objeto de serviço de tempo de vida atual que controla a política de ciclo de vida para esta instância.

(Herdado de MarshalByRefObject)
GetService(Type)

Retorna um objeto que representa um serviço fornecido pelo Component ou pelo seu Container.

(Herdado de Component)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
GetWebRequest(Uri)

Cria uma instância de WebRequest para o URI especificado.

GetWebResponse(WebRequest)

Retorna uma resposta de uma solicitação síncrona para um método de serviço Web XML.

(Herdado de HttpWebClientProtocol)
GetWebResponse(WebRequest, IAsyncResult)

Retorna uma resposta de uma solicitação assíncrona para um método de serviço Web XML.

(Herdado de HttpWebClientProtocol)
InitializeLifetimeService()
Obsoleto.

Obtém um objeto de serviço de tempo de vida para controlar a política de tempo de vida para essa instância.

(Herdado de MarshalByRefObject)
Invoke(String, String, Object[])

Invoca um método de serviço Web XML usando HTTP.

(Herdado de HttpSimpleClientProtocol)
InvokeAsync(String, String, Object[], SendOrPostCallback)

Chama o método especificado de forma assíncrona.

(Herdado de HttpSimpleClientProtocol)
InvokeAsync(String, String, Object[], SendOrPostCallback, Object)

Invoca o método especificado de maneira assíncrona enquanto mantém um estado associado.

(Herdado de HttpSimpleClientProtocol)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
MemberwiseClone(Boolean)

Cria uma cópia superficial do objeto MarshalByRefObject atual.

(Herdado de MarshalByRefObject)
ToString()

Retorna um String que contém o nome do Component, se houver. Esse método não deve ser substituído.

(Herdado de Component)

Eventos

Disposed

Ocorre quando o componente é disposto por uma chamada ao método Dispose().

(Herdado de Component)

Aplica-se a

Confira também