Clipper On Line • Ver Tópico - Url de callback

Url de callback

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

Moderador: Moderadores

 

Url de callback

Mensagempor roh.drigo » 27 Mar 2019 23:46

Gostaria de saber como crio uma url para callback, estou fazendo uma integração por api e a empresa pede uma url de callback.
roh.drigo
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 6
Data de registro: 19 Mar 2019 09:27
Cidade/Estado: marilia/sp
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Url de callback

Mensagempor JoséQuintas » 28 Mar 2019 20:01

Se entendi direito, a empresa quer um webservice, é isso?
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

Url de callback

Mensagempor roh.drigo » 29 Mar 2019 00:58

Acredito que seja isso, no caso seria para integração com apis para estoque de produtos e cadastros, para integrar com o site que eles fazem.
Seria essa empresa que faz http://developers.tray.com.br/
Só para fazer o cadastro eles já pedem a url de callback.

Cadastro do aplicativo
Para disponibilizar as chaves de integração é necessário informar alguns dados para a criação de uma aplicação.
Estes dados são divididos em dados do integrador, onde é necessário informar os dados da empresa que irá realizar a integração, e dados do aplicativo, com os dados para cadastro da aplicação. Segue abaixo os dados necessários:

Dados do integrador:
Nome do contato técnico
Email do contato técnico
Telefone do contato técnico
URL da empresa
Dados do aplicativo:

Nome da aplicação
Descrição da aplicação
URL de callback (Em ambiente seguro - SSL)
Imagem com o logo da aplicação (tamanho 70x70)
roh.drigo
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 6
Data de registro: 19 Mar 2019 09:27
Cidade/Estado: marilia/sp
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Url de callback

Mensagempor alxsts » 29 Mar 2019 08:45

[]´s
Alexandre Santos (AlxSts)
alxsts
Colaborador

Colaborador
 
Mensagens: 2943
Data de registro: 12 Ago 2008 15:50
Cidade/Estado: São Paulo-SP-Brasil
Curtiu: 21 vezes
Mens.Curtidas: 248 vezes

Url de callback

Mensagempor roh.drigo » 09 Abr 2019 17:23

Estou com um problema, não consigo fazer o sistema fazer o login, ele ate carrega os dados do site, mas não faz o login e preciso pegar depois do login também o retorno da url.
O que eles pedem:

TRAY
"Após a autorização, o cliente é redirecionado para URL informada no parâmetro callback passado no momento da autorização (no exemplo acima é a URL http://localhost/tray/callback/auth/), onde ficaria, seguindo os exemplos anteriores, da seguinte forma esta URL:
http://localhost/tray/callback/auth/?co ... ss=http://{URL da loja}/web_api/
Assim é possível capturar as informações dessa URL e utilizá-las para configurar em sua aplicação, sendo os parâmetros code e api_address mais importantes no processo de integração."

Segue minha programação

cUrl := 'https://trayparceiros.commercesuite.com.br/auth.php?'+'response_type=code&consumer_key='+consumerkey+'&callback='+wcallback

aResult:= ""
cXml:=''
XML(@cXml,wnome,wsenha)

oHttp:= CreateObject( 'MSXML2.ServerXMLHTTP' )
oHttp:Open( "GET", cUrl, .f. )
oHttp:setRequestHeader('Content-Type'  , 'application/json;charset=UTF-8')
oHttp:Send(cXml)

IF oHttp:status <> 200 // diferente de aprovado
   MsgStop( Alltrim(Str(oHttp:status)) +" - "+ Alltrim(oHttp:ResponseText) , "Erro na requisição")
   MemoWrit('resposta.html', oHttp:ResponseText) 
   RETURN NIL
ENDIF
MemoWrit('resposta.html', oHttp:ResponseText)  // coloquei apenas para visualizar o retorno em caso de erro
x:= oHttp:responseText

//MSGINFO(x,"OK") // visualizar na tela

RETURN nil

*********************************************************************************************************
FUNCTION XML(cXml,wnome,wsenha)
   cXml:=[{]+hb_eol()
   cXml:= cXml + ["usuario": "]+wnome+[" ,]+hb_eol()
   cXml:= cXml + ["senha": "]+wsenha+["]+hb_eol()
   cXml:= cXml + [}]

   HB_MemoWrit('login.xml',cXml)
RETURN cXml
Nota de Moderação:
Toledo: Mensagem editada para colocar a tag [ code ]
Veja como utilizar esta tag: Clique aqui
roh.drigo
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 6
Data de registro: 19 Mar 2019 09:27
Cidade/Estado: marilia/sp
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Url de callback

Mensagempor roh.drigo » 02 Mai 2019 22:48

Preciso fazer o login conforme o layout da Tray,

Solicitar autorização
O código de autorização é fornecido através do servidor de autenticação do Tray Commerce.

Para permitir acesso as informações e recursos da conta, o cliente deve ser redirecionado para a url de autenticação pelo navegador.(******SERA QUE TEM COMO FAZER SEM ABRIR O NAVEGADOR*****)
O Tray Commerce é responsável por receber a confirmação da autorização do cliente e fornecer o código de autorização ao aplicativo.

Url para autenticação: https://{dominio_da_loja}/auth.php

Parâmetros HTTP "GET" suportados para a autenticação:
response_type: Tipo de solicitação (Valor padrão code)
consumer_key: Identificação do aplicativo junto ao Tray Commerce.
callback: URL de Callback que será redirecionado depois da autorização

Depois pegar o retorno da url que retornar, conforme o tutorial da Tray:

Após a autorização, o cliente é redirecionado para URL informada no parâmetro callback passado no momento da autorização (no exemplo acima é a URL http://localhost/tray/callback/auth/), onde ficaria, seguindo os exemplos anteriores, da seguinte forma esta URL:

https://{dominio_da_loja}/auth.php?response_type=code&consumer_key=2r9dg7sgdb&callback=https://{url_de_callback}

Assim é possível capturar as informações dessa URL e utilizá-las para configurar em sua aplicação, sendo os parâmetros code e api_address mais importantes no processo de integração.

Com o code e api_address, deve-se utilizar a API de Gerar Chave de Acesso para gerar o valor do access_token utilizados nas outras APIs. É de extrema importância armazenar todas as informações de retorno desta API, pois serão utilizados constantemente durante a comunicação com a Tray.
roh.drigo
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 6
Data de registro: 19 Mar 2019 09:27
Cidade/Estado: marilia/sp
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Url de callback

Mensagempor JoséQuintas » 03 Mai 2019 00:50

Aí complicou.
Talvez elas tenham exemplo de algum cliente que já faz isso.

Pesquisar detalhes sobre isso.... só se algum dia eu usar, igual acabou acontecendo com webservice de seguro, que só descobri quando chegou minha vez de usar, e mesmo assim levou alguns dias...
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

Url de callback

Mensagempor lucimauro » 29 Nov 2023 18:37

Ola, conseguiu concluir essa integração com tray?
lucimauro
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 448
Data de registro: 21 Set 2004 21:02
Cidade/Estado: Sobral-CE
Curtiu: 15 vezes
Mens.Curtidas: 19 vezes




Retornar para Harbour

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 7 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