HttpPostClientProtocol Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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
-
HttpPostClientProtocol
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 de MimeFormatter para 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 precisará ser criada para o serviço Web XML que você deseja chamar. Quando o cliente de 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 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) |