Clipper On Line • Ver Tópico - Utilizar Rest em Harbour

Utilizar Rest em Harbour

Projeto Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

 

Utilizar Rest em Harbour

Mensagempor hs_paulo » 18 Fev 2019 13:08

Pessoal !

Tenho que fazer uma rotina pra pegar pedidos e enviar as postagens efetuadas em um markeplace, e ele utiliza a API que usa arquitetura Rest.

Alguem tem experiencia ou uma luz por onde comerçar ?
hs_paulo
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 25
Data de registro: 02 Set 2015 17:11
Cidade/Estado: Bauru
Curtiu: 24 vezes
Mens.Curtidas: 1 vez

Utilizar Rest em Harbour

Mensagempor Itamar M. Lins Jr. » 18 Fev 2019 15:59

Ola!
Tem a palestra, e o powerpoint...
https://medium.com/harbour-magazine/restful-server-with-harbour-575e59335cf7

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Utilizar Rest em Harbour

Mensagempor cnavarro » 18 Fev 2019 22:07

Acceder a un REST API es sencillo desde Harbour

https://bitbucket.org/fivetech/harbour_ ... o_REST.pdf
cnavarro
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 52
Data de registro: 28 Set 2017 14:16
Cidade/Estado: Spain
Curtiu: 3 vezes
Mens.Curtidas: 14 vezes

Utilizar Rest em Harbour

Mensagempor hs_paulo » 24 Fev 2019 13:57

Pessoal,

Como logo em um site?

Tenho que logar em um site utilizando autotenticacao basica. Tentei seguir as apostilas que mandaram, mas não consegui. Como fazer?
hs_paulo
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 25
Data de registro: 02 Set 2015 17:11
Cidade/Estado: Bauru
Curtiu: 24 vezes
Mens.Curtidas: 1 vez

Utilizar Rest em Harbour

Mensagempor asimoes » 24 Fev 2019 16:39

Tenta usar o SoapUI

https://www.soapui.org/

Ele trabalha com SOAP / REST
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Utilizar Rest em Harbour

Mensagempor hs_paulo » 24 Fev 2019 18:54

Pessoal, é o seguinte:

Tenho que acessar um servidor Rest e a autenticação na API é feita utilizando o padrão Basic Auth com o Token codificado em 64bits.

Quando acesso pelo SOAPui, acessa normal, mas quando tento pelo Harbour não estou conseguindo.

Veja se voces podem me ajudar, onde estou errando? Sempre retorna "nao autorizado"
Procedure Main ()

Public wCode64 :="dmVuZGFzQGhhcmRzb2Z0bmV0LmNvbS5ickA0ODEzLTMyUzQtNEJVVC0zTzdH"

Public wURL    := [https://api.marketplace.cissamagazine.com.br/items/020097/price]

Public wServerWS := Win_OleCreateObject("MSXML2.ServerXMLHTTP")

With Object wServerWS
     :Open( "GET", wURL, .F. )
     :SetRequestHeader( "Content-Type", 'text/xml; charset="utf-8"' )
    :SetRequestHeader( "Authorization", "Basic " + wCode64 )
     :Send( " " )

    ? wServerWS:responseText
    inkey (0)

End With

Return nil
hs_paulo
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 25
Data de registro: 02 Set 2015 17:11
Cidade/Estado: Bauru
Curtiu: 24 vezes
Mens.Curtidas: 1 vez

Utilizar Rest em Harbour

Mensagempor hs_paulo » 26 Fev 2019 10:35

Achei o erro. Estava no codigo de 64bits.

Funcionou.

Fica o exemplo pra quem precisa acessar o REST com autenticação basica.
hs_paulo
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 25
Data de registro: 02 Set 2015 17:11
Cidade/Estado: Bauru
Curtiu: 24 vezes
Mens.Curtidas: 1 vez

Utilizar Rest em Harbour

Mensagempor Itamar M. Lins Jr. » 01 Mar 2019 08:44

Ola!
Cadê o exemplo, e o FIX do erro autent. 64bits ?

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Utilizar Rest em Harbour

Mensagempor janio » 01 Mar 2019 10:34

Achei o erro. Estava no codigo de 64bits.


Boiei
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Avatar de usuário

janio
Colaborador

Colaborador
 
Mensagens: 1835
Data de registro: 06 Jul 2004 07:43
Cidade/Estado: UBAJARA - CE
Curtiu: 8 vezes
Mens.Curtidas: 68 vezes

Utilizar Rest em Harbour

Mensagempor Itamar M. Lins Jr. » 01 Mar 2019 11:25

Ola!
Public wCode64 :="dmVuZGFzQGhhcmRzb2Z0bmV0LmNvbS5ickA0ODEzLTMyUzQtNEJVVC0zTzdH"


Tô achando que essa variável está com erro de sintaxe.
Agora eu não sei onde pego isso.

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Utilizar Rest em Harbour

Mensagempor binho_fasa » 04 Jul 2019 10:14

Algumas informações como logins entre outros precisam ser convertidos a base 64 por questões de segurança. No site https://www.base64encode.org/ pode ser convertido, por exemplo: password=123456 para cGFzc3dvcmQ9MTIzNDU2.

[]´s
Avatar de usuário

binho_fasa
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 92
Data de registro: 06 Jul 2004 12:53
Cidade/Estado: Brazil
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Utilizar Rest em Harbour

Mensagempor hs_paulo » 22 Jun 2020 13:11

Estou com um novo problema !

Utilizando o Postman ele retorna corretamente, quando faço pelo programa retorna vazio.

Procedure Main ()

Public wServerWS := Win_OleCreateObject( "MSXML2.ServerXMLHTTP" )

Do While .t.
Begin Sequence
With Object wServerWS
:Open( "GET", "https://marketplace.madeiramadeira.com.br/v1/produto/situacao/publicados/limit=100&offset=0", .f. )
:SetRequestHeader( "Content-Type", "application/json; charset=utf8" )
:SetRequestHeader( "TOKENMM", "MMKTP25032019152137" )
:Send( "{}" )
:WaitForResponse( 1000 )

? wServerWS:readyState
? wServerWS:Status
? wServerWS:StatusText
? wServerWS:ResponseXML
inkey (0)

End With
End Sequence
Exit
EndDo

Return ( .t. )
hs_paulo
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 25
Data de registro: 02 Set 2015 17:11
Cidade/Estado: Bauru
Curtiu: 24 vezes
Mens.Curtidas: 1 vez

Utilizar Rest em Harbour

Mensagempor JoséQuintas » 22 Jun 2020 14:16

Na única comunicação que fiz, consultas eram com POST, e alterações eram com PUT.
Sem esse GET
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18014
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Utilizar Rest em Harbour

Mensagempor asimoes » 22 Jun 2020 14:50

binho_fasa escreveu:Algumas informações como logins entre outros precisam ser convertidos a base 64 por questões de segurança.


Tem função do harbour que faz isso:

oEncoder := TipEncoderBase64():New()

cEncode := oEncoder:Encode( "TESTE" )
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Utilizar Rest em Harbour

Mensagempor asimoes » 22 Jun 2020 16:51

â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Próximo



Retornar para Harbour

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 10 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro