Jump to content
Fivewin Brasil

Recarga de celular cellcard


wanderlei

Recommended Posts

Bom dia Pessoal,

Preciso desenvolver uma função para recarga de celular usando o https via post, porem não tenho ideia de como passar os parâmetros.

Peguei um exemplo muito antigo, mas não funciona ele retorna que os parâmetros não foram enviados via POST.

********************************************************************************
*** Programa..: RECARGA.PRG ***
*** Data......: 05/05/2016 ***
*** Módulo....: Recarga de celular - cellcard ***
*** Autor.....: Wanderlei Cardoso de Oliveira ***
********************************************************************************
#include "directry.ch"
#include "Fileio.ch"
#include "tip.ch"
****************************************************************************
FUNCTION Consulta_Produto_Recarga()
****************************************************************************
*
* envia o arquivo xml via https
* Parametros: arquivo xml a ser enviado
*
****************************************************************************
LOCAL cXML := Montaxml(), oHttp
try
oHttp = CreateObject( "MSXML2.ServerXMLHTTP.5.0")
catch
Msginfo("Erro na criação do objeto MSXML2.XMLHTTP : " + Ole2TxtError())
return NIL
end
oHttp:SetRequestHeader("Content-Type", "text/xml; charset=utf-8" )
oHttp:send( cXML )
oHttp:WaitForResponse( 5000 )
Msginfo( oHttp:responseText,'Resposta' )
RETURN( oHttp:responseText )
********************************************************************************
FUNCTION Montaxml()
********************************************************************************
local oXml, oTag
local Timestamp := STRTRAN(DTOC(date()),"/","") + STRTRAN(LEFT(time(),5),":","")
local codcompra := "" , codprod := "" , cvalor := "" , cddd := ""
local cfone := "" , codret := "" , dtconsul := "" , codonline := ""
oXml := TXmlDoc():New()
oTag := TXmlTag():New( oXml, 'cellcard' )
oTag:addTag( 'versao', '3.94' )
oTag:addTag( 'codigo_transacao', '1' )
oTag:addTag( 'loja_primaria', 'teste' )
oTag:addTag( 'nome_primario', 'teste' )
oTag:addTag( 'senha_primaria', 'teste' )
/*
oTag:addTag( 'compra', '' )
oTag:addTag( 'produto', '' )
oTag:addTag( 'valor', '' )
oTag:addTag( 'ddd', '' )
oTag:addTag( 'fone', '' )
oTag:addTag( 'id_terminal', '000001' )
oTag:addTag( 'uf_terminal', 'GO' )
oTag:addTag( 'dataHoraOperacao', '1' )
oTag:addTag( 'versao', '3.94' )
oTag:addTag( 'cod_retorno', '' )
oTag:addTag( 'dataConsulta', dtos(Date()) )
oTag:addTag( 'cod_online', '' )
*/
*---> Salva o arquivo XML no disco <---*
cTexto := oXml:SaveFile()
ferase("Cellcard.XML")
handle := fcreate("Cellcard.XML")
fwrite(handle,cTexto)
fClose(handle)
RETURN( cTexto )
os parâmetros:
codigo_transacao integer 1
loja_primaria String Login da loja
nome_primario string Login do usuário
senha_primaria String Senha do usuário
versao Decimal 3.94

Integracao XML 395.pdf

Link to comment
Share on other sites



Try


oConecta := CreateObject( 'Msxml2.XMLHTTP.3.0' )


Catch


Try


oConecta := CreateObject( 'MSXML2.XMLHTTP' )


Catch


oConecta := CreateObject( 'Microsoft.XMLHTTP' )


End
End


oConecta:Open( 'POST', "https://www.cellcard...gracao_xml.php", .F. )


If oConecta:readyState = 1


oConecta:setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" )


oConecta:Send("codigo_transacao=1"+;
"&loja_primaria=teste"+;
"&nome_primario=teste"+;
"&senha_primaria=teste"+;
"&id_terminal=001"+;
"&uf_terminal=RJ"+;
"&versao=3.94" )


If Empty( oConecta:ResponseBody )
MsgInfo("Sem resposta")
EndIf


EndIf

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...