Perguntas SERASA
- jmfrolim
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 52
- Obrigados Recebidos: 1
8 anos 8 meses atrás #30376
por jmfrolim
Fala Mario,
Seguinte ta corrido aqui por isso que não respondi nada ainda, mas olhei o fonte e acredito que o motivo te estar retornando NIL é não montagem da string que vai com parametro para a Url. No metodo Get do Http ele sempre recebe parametros ai ele retorna uma resposta, teu fonte a functionc STATIC FUNCTION CREDNET_A()
monta essa string e concatena com a variael cUrl+ " p= "+ (a string montada)-> nesse string pelo que vi esta ficando muitos espaços vazios da uma verificada nessa montagem de string
Para da uma clareada segue a abaixo um exemplo usa HTTPGET, mas ao inves de uma string é passado um xml como parametro para url!
Falou Brother qualquer coisa posta ai.
#INCLUDE 'PROTHEUS.CH'
#INCLUDE 'RWMAKE.CH'
#INCLUDE 'FONT.CH'
#INCLUDE 'COLORS.CH'
User Function VerCep()
Private cBairro := Space(100)
Private cCidade := Space(100)
Private cLog := Space(100)
Private cTipLog := Space(20)
Private cUF := Space(20)
Private cCep := Space(12)
SetPrvt("oDlg1","oSay1","oSay2","oSay3","oSay4","oSay5","oSay6","oGet1","oSBtn1")
oDlg1 := MSDialog():New( 088,232,316,624,"oDlg1",,,.F.,,,,,,.T.,,,.T. )
oSay1 := TSay():New( 012,012,{||"Digite o CEP:"},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,036,008)
oSay2 := TSay():New( 044,016,,oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,032,008)
oSay3 := TSay():New( 044,056,,oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,128,012)
oSay4 := TSay():New( 064,016,,oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,168,012)
oSay5 := TSay():New( 084,012,,oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,032,012)
oSay6 := TSay():New( 084,052,,oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,132,012)
oGet1 := TGet():New( 012,052,{|u| If(PCount()>0, cCep:= u, cCep )},oDlg1,060,008,'',,CLR_BLACK,CLR_WHITE,,,,.T.,"",,,.F.,.F.,,.F.,.F.,"","cCep",,)
oSBtn1 := SButton():New( 012,160,1,,oDlg1,,"", )
oSBtn1:bLClicked := {|| LoadCEP() }
oDlg1:Activate(,,,.T.)
Return
Static Function LoadCEP()
Local cError := ""
Local cWarning := ""
Local aRetorno := {}
Local cRETORNO //obtem o xml
cRETORNO := HttpGet( ' republicavirtual.com.br/web_cep.php?cep='+cCep+'&formato=xml ' )
if cRETORNO == nil
MsgStop( Alert( "Servidor de CEP indisponível." ) )
else
oScript := XmlParser( cRETORNO, "_", @cError, @cWarning )
if oScript <> nil
if XmlChildEx( oSCRIPT, "_WEBSERVICECEP" ) <> nil
if Val(oSCRIPT:_WEBSERVICECEP:_RESULTADO:TEXT) > 0
cUF := oSCRIPT:_WEBSERVICECEP:_UF:TEXT
cCidade := oSCRIPT:_WEBSERVICECEP:_CIDADE:TEXT
cBairro := oSCRIPT:_WEBSERVICECEP:_BAIRRO:TEXT
cTipLog := oSCRIPT:_WEBSERVICECEP:_TIPO_LOGRADOURO:TEXT
cLog := oSCRIPT:_WEBSERVICECEP:_LOGRADOURO:TEXT
endif
endif
endif
endif
oSay2 := TSay():New( 044,016,{||"UF: " + cUF},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,032,008)
oSay3 := TSay():New( 044,056,{||"Cidade: " + cCidade},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,128,012)
oSay4 := TSay():New( 064,016,{||"Bairro: " + cBairro},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,168,012)
oSay5 := TSay():New( 084,012,{|| cTipLog},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,032,012)
oSay6 := TSay():New( 084,052,{|| cLog},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,132,012)
Return
Seguinte ta corrido aqui por isso que não respondi nada ainda, mas olhei o fonte e acredito que o motivo te estar retornando NIL é não montagem da string que vai com parametro para a Url. No metodo Get do Http ele sempre recebe parametros ai ele retorna uma resposta, teu fonte a functionc STATIC FUNCTION CREDNET_A()
monta essa string e concatena com a variael cUrl+ " p= "+ (a string montada)-> nesse string pelo que vi esta ficando muitos espaços vazios da uma verificada nessa montagem de string
Para da uma clareada segue a abaixo um exemplo usa HTTPGET, mas ao inves de uma string é passado um xml como parametro para url!
Falou Brother qualquer coisa posta ai.
#INCLUDE 'PROTHEUS.CH'
#INCLUDE 'RWMAKE.CH'
#INCLUDE 'FONT.CH'
#INCLUDE 'COLORS.CH'
User Function VerCep()
Private cBairro := Space(100)
Private cCidade := Space(100)
Private cLog := Space(100)
Private cTipLog := Space(20)
Private cUF := Space(20)
Private cCep := Space(12)
SetPrvt("oDlg1","oSay1","oSay2","oSay3","oSay4","oSay5","oSay6","oGet1","oSBtn1")
oDlg1 := MSDialog():New( 088,232,316,624,"oDlg1",,,.F.,,,,,,.T.,,,.T. )
oSay1 := TSay():New( 012,012,{||"Digite o CEP:"},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,036,008)
oSay2 := TSay():New( 044,016,,oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,032,008)
oSay3 := TSay():New( 044,056,,oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,128,012)
oSay4 := TSay():New( 064,016,,oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,168,012)
oSay5 := TSay():New( 084,012,,oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,032,012)
oSay6 := TSay():New( 084,052,,oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,132,012)
oGet1 := TGet():New( 012,052,{|u| If(PCount()>0, cCep:= u, cCep )},oDlg1,060,008,'',,CLR_BLACK,CLR_WHITE,,,,.T.,"",,,.F.,.F.,,.F.,.F.,"","cCep",,)
oSBtn1 := SButton():New( 012,160,1,,oDlg1,,"", )
oSBtn1:bLClicked := {|| LoadCEP() }
oDlg1:Activate(,,,.T.)
Return
Static Function LoadCEP()
Local cError := ""
Local cWarning := ""
Local aRetorno := {}
Local cRETORNO //obtem o xml
cRETORNO := HttpGet( ' republicavirtual.com.br/web_cep.php?cep='+cCep+'&formato=xml ' )
if cRETORNO == nil
MsgStop( Alert( "Servidor de CEP indisponível." ) )
else
oScript := XmlParser( cRETORNO, "_", @cError, @cWarning )
if oScript <> nil
if XmlChildEx( oSCRIPT, "_WEBSERVICECEP" ) <> nil
if Val(oSCRIPT:_WEBSERVICECEP:_RESULTADO:TEXT) > 0
cUF := oSCRIPT:_WEBSERVICECEP:_UF:TEXT
cCidade := oSCRIPT:_WEBSERVICECEP:_CIDADE:TEXT
cBairro := oSCRIPT:_WEBSERVICECEP:_BAIRRO:TEXT
cTipLog := oSCRIPT:_WEBSERVICECEP:_TIPO_LOGRADOURO:TEXT
cLog := oSCRIPT:_WEBSERVICECEP:_LOGRADOURO:TEXT
endif
endif
endif
endif
oSay2 := TSay():New( 044,016,{||"UF: " + cUF},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,032,008)
oSay3 := TSay():New( 044,056,{||"Cidade: " + cCidade},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,128,012)
oSay4 := TSay():New( 064,016,{||"Bairro: " + cBairro},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,168,012)
oSay5 := TSay():New( 084,012,{|| cTipLog},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,032,012)
oSay6 := TSay():New( 084,052,{|| cLog},oDlg1,,,.F.,.F.,.F.,.T.,CLR_BLACK,CLR_WHITE,132,012)
Return
Por favor Acessar ou Registrar para participar da conversa.
- mariochagas
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 6
- Obrigados Recebidos: 0
8 anos 8 meses atrás #30377
por mariochagas
Respondido por mariochagas no tópico SERASA
Entendi, a questão dos espaço é porque eu estou seguindo o manual fornecido pela SERASA, tanto é que se eu pegar essa string e jogar no navegador eu tenho o retorno de uma string.
Eu tambem tenho um fonte de exemplo que devolve cotação do dolar e esse fonte funciona direitinho...eu não sei se é algum problema com autentição, pois as primeiras posições depois do P= são informações de login e senha.
Muito estranho.
Eu tambem tenho um fonte de exemplo que devolve cotação do dolar e esse fonte funciona direitinho...eu não sei se é algum problema com autentição, pois as primeiras posições depois do P= são informações de login e senha.
Muito estranho.
Por favor Acessar ou Registrar para participar da conversa.
- jmfrolim
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 52
- Obrigados Recebidos: 1
8 anos 8 meses atrás - 8 anos 8 meses atrás #30379
por jmfrolim
Mario acredito que pode ser pelo login então não sei de influenciaria muito, mas tenta fazer o login na requisição get!
Segue um fonte exemplo para autenticação
fonte BlackTDN
#INCLUDE "PROTHEUS.CH"
User Function HttpAuth()
Local aHeadOut := {}
Local cHttpHeader := ""
Local cUrl := " teste.com.br "
Local cHttpGet := ""
aAdd( aHeadOut , "Authorization: Basic "+Encode64("user"+":"+"password" ) )
cHttpGet := HttpGet(cUrl,"",NIL,aHeadOut,@cHttpHeader)
Return( cHttpGet )
fonte: www.blacktdn.com.br/2012/03/blacktdn-aut...t.html#ixzz44a67KRGs
Segue um fonte exemplo para autenticação
fonte BlackTDN
#INCLUDE "PROTHEUS.CH"
User Function HttpAuth()
Local aHeadOut := {}
Local cHttpHeader := ""
Local cUrl := " teste.com.br "
Local cHttpGet := ""
aAdd( aHeadOut , "Authorization: Basic "+Encode64("user"+":"+"password" ) )
cHttpGet := HttpGet(cUrl,"",NIL,aHeadOut,@cHttpHeader)
Return( cHttpGet )
fonte: www.blacktdn.com.br/2012/03/blacktdn-aut...t.html#ixzz44a67KRGs
Ultima edição: 8 anos 8 meses atrás por jmfrolim.
Por favor Acessar ou Registrar para participar da conversa.
- mariochagas
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 6
- Obrigados Recebidos: 0
8 anos 7 meses atrás #30380
por mariochagas
Respondido por mariochagas no tópico SERASA
Bom dia, Infelizmente mesmo usando a autenticação dessa forma nao funcionou. Tenho que adicionar alguma coisa no Appserver.ini ?
Att.
Att.
Por favor Acessar ou Registrar para participar da conversa.
Tempo para a criação da página:0.127 segundos