Recarga de celular cellcard
Enviado: 06 Mai 2016 09:25
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 'hwgui.ch'
#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:open("POST", "https://www.cellcard...gracao_xml.php", .F.)
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
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 'hwgui.ch'
#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:open("POST", "https://www.cellcard...gracao_xml.php", .F.)
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