Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

DiegoRiba

Caracteres estranho no xml de retorno por SOAP

Recommended Posts

Boa tarde a todos.

Estou desenvolvendo uma integração de um sistema back office, com um sistema consolidador.

Consigo fazer a comunicação, e tenho a resposta também.

Porém o xml de resposta me retorna caracteres estranhos como se o navegador estivesse identificando o xml como html.
A princípio pensei em alterar o charset. E alterei para Ansi e mesmo assim o problema persiste.

Eis o meu código de envio..

Dim oXmlHttp
Set oXmlHttp = server.CreateObject("Msxml2.ServerXMLHTTP")

oXmlHttp.open "POST", sSoapServer, false
oXmlHttp.setRequestHeader "Accept-Encoding", "gzip,deflate" 
oXmlHttp.setRequestHeader "Content-Type", " text/xml;charset=UTF-8"
oXmlHttp.setRequestHeader "SOAPAction", "http://tempuri.org/Vendas"
oXmlHttp.setRequestHeader "Content-Length", "474"
oXmlHttp.send(txt)

Pessoal, uma observação.

As variáveis estão ok. O problema não é de conexão e sim de interpretação eu acredito.

 

Abaixo um pedaço do xml que me retorna.

<Venda>
  <origem />
  <idvenda>185715</idvenda>
  <tipoproduto>Etkt</tipoproduto>
  <clasproduto>I</clasproduto>
  <idemissor />
  <dtemissao>02/04/2014</dtemissao>
  <nmagencia />
  <idcliente>1776</idcliente>
  <IdBackoffice />
  <Codunidade />
  <idoperador>JJ</idoperador>
  <idfornecedor>JJ</idfornecedor>
  <formrec>2</formrec>
  <vencrec />
  <formpagto>6</formpagto>
  <vencpagto />
  <cartaocia>1</cartaocia>
  <cartaonumero>4075050247107870</cartaonumero>
  <cartaovalidade>01/01</cartaovalidade>
  <cartaocodseguranca />
  <cartaotitular />
  <centrocustocli />
  <ccrCentroDeCusto />
  <ccrprojeto />
  <ccrrequisicao />
  <ccrEmpenho />
  <departamento />
  <MenorTarifa>0</MenorTarifa>
  <TarifaCheia>0</TarifaCheia>
  <TarifaBase>3899,00</TarifaBase>
  <MaiorTarifa>3899,00</MaiorTarifa>
  <Status>1</Status>

Uma observação: Esta exibição acima foi tirada no "exibir código fonte" do navegador ok?

 

Alguém tem ideia do que pode ser?

Obrigado.

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, encontrei uma solução meio POG, mas funciona.

Substitui os caracteres estranhos utilizando o replace. Substitui por <>.

Deu certo, mas se alguém tiver a solução menos pogastica avisa ai por favor.

Valeuu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

você tentou "ISO-8859-1" como charset, ou dar um replace nos caracteres

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim. O iso.. não funcionou, porém o replace sim.

Mas não creio que seja uma "solução" este replace.

Será que temos outra opção?

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta assim:

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"
Response.Charset="ISO-8859-1" %>

Response.CharSet = "ISO-8859-1". No cabeçalho do site coloque a meta tag <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />, e ao cadastrar qualquer coisa dei um replace

e para UTF-8

Mudar o head da página que solicita os dados para que ele fique assim
<meta http-equiv="content-type" content="text/html; charset=utf-8" />

Na página que responde os dados colocar isso antes do retorno co conteúdo (logo no topo):
<%
Response.AddHeader "Content-Type", "text/html; charset=utf-8"
Response.AddHeader "Pragma", "no-cache"
response.Charset="utf-8"
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ainda nada...

você pediu para que eu colocasse:

<%
Response.AddHeader "Content-Type", "text/html; charset=utf-8"
Response.AddHeader "Pragma", "no-cache"
response.Charset="utf-8"
%>

 

Na página de resposta.

Mas isso consome um webservice que não está em meu poder entende?

Não sei como fizeram para criar e como criaram o webservice, apenas posso consumi-lo.

 

Mas tudo bem, já consegui resolver com o replace.

Foi o único jeito.

Mas tá funcionando então blz.

Mas valeu mesmo cara. Você manja d+...

Compartilhar este post


Link para o post
Compartilhar em outros sites

1175422_714835018560297_2296038501257836

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não vi seu retorno como está?

Tentou com oxmlHttp.responseXML deve está como texto pois estes caracteres estranhos são as tags do XML não interpretado troque oxmlHttp.responsetext pelo que mencionei...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Gustavo.

Tentei o que você falou, mas retornou este erro:

Object doesn't support this property or method

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.