last day (19 days later) » 

12:58
0
Q: jogar dados de login no parâmetro da API

Nazare LisboaNo login eu peço para o usuário colocar o email e cpf, aí tenho uma api que joga dados numa tabela que eu criei, aí eu preciso pegar os parâmetros cpf e email para colocar na api. Ex: http://8080/rest/apiCODCPF=02798477425&EMAIL=fulano%40fulano.com.br Como consigo pegar os dados de email e c...

Essa API você que criou? Alguém criou e falou para você consumir ela? Caso seja de terceiro você tem que saber como é a forma de consurmir: GET/POST, no que você passou seria via GET. Outro detalhe, o link está assim: '8080/rest/apiCODCPF', não seria 'nomedolocal:8080/rest/api/', pode ver que colocar o nome do localdaapi e uma barra após a palavra API.
Exatamente, criaram e mandaram eu consumir ela
Completei meu comentário acima...
O link que eu coloquei da api é modificada, só um exemplo, entende? Eu soube consumir ela e mostrar os dados no site, só que preciso colocar cpf e email como parâmetro, como falei na pergunta
Coloca o código do que você ta tentando...
12:58
Pronto. Desse jeito é como consigo mostrar a api no site (dados da api)
Oi @ma
Pelo o que eu vi, vc ta fazendo requisão com javascript puro
@MaxRogério *
isso mesmo
tem algum problema?
É normativa ou tem jquery pra facilitar?
posso usar jquery, mas fiz só em js mesmo
jquery é mais simples, mas se quiser usa js puro posso tentar ajudar
Primeiro, que infomrações tem passaram para fazer o login via ajax?
Voce disse que a API já está criada
13:02
sim
agora você precisa saber na documentação(se tiver), ou conversar com quem desenvolveu como está o recebimento dos dados
se é tudo via GET
aí os dados do login sao: cpf e email
ou se é via POST
eu tenho a documentação
é via GE
na parte de login a documentação fala o que?
que api é essa? é publica?
Não, meu chefe que fez
ele mandou esse link dizendo que era a documentação
e como eu nao entendo nada de api...
Pelo o q eu entendi está escrito na descrição: "Retorna o orçamento e status da entrega".
Não li nada sobre login...
Ele disse que teria que jogar os dados de login para o parametro da api
ai seria aq: CODCPF=02798477425&EMAIL=fulano%40fulano.com.br
quando você tenta acessar a url diretamente o que acontece?
13:08
vou mandar pra voce
Tem que ver vários fatores...
sao os dados do cliente fictício
se CPF é com . e -
se CPF é somente número
se o servidor da api ta tratando o recebimento @(%40), de forma correta
{"TRACKER":[{"CEPENT":"57000000","CLIRET":"NAO","CODCAR":"000152","CODCLI":"5264‌​60","CODPRO":"12819009 ","CPF":"02798477425 ","DESPRO":"COLCHAO GAZIN SUPREME COMPOSTO 138X188X21CM 1PL 660120 .\/PR ","DTAENT":"20170715","DTAENTORC":"20170707","DTAMON":"20170724","DTAMONORC":"20‌​170712","DTAPREENT":"20170714","ENDENT":"R LUIZ DE MASCARENHA APT 1801 ","FILCD":"99","FILORC":"01","FLAG":"ENTREGUE ","MUNENT":"MACEIO ","NFISCA":"000033718","NOME"..
@MaxRogério aparentemente sim
e aparentemente o cpf ta sem os traços
Isso é o que você quer receber no JS
?
13:11
esses sao os dados da api
quando clico no link dela já consumida
já com o cpf e email no parametro
Aí eu fiz um site, e precisa fazer o login pra conseguir entrar, quando entrar, vai ter uma tabela, e nessa tabela vai ser colocados os dados da api (eu já fiz isso)
Aí eu preciso pegar os dados que a pessoa coloca em login (cpf e email) e com isso jogar na api (parametro) como tem no link (ela consumida)
E não a função da API sobre o retorno do login
tipo
{"ID": 1234, "NOME": "Max", "TOKEN": "DLJSAJ321K3L21LJ"}
ele disse que eu só preciso jogar o cpf e email no parametro, que a propria api vai fazer o select no bd
Blz
Então, faz a requisição, depois faz um console.log(clientes).
Isso vai mostrar se ta recebendo dados ou não
Se receber dados, então você faz uma verificação no JS, pegando um campo chave
e caso exista esse campo chave encaminhe o usuário para a página em questão
ou monte uma sessão com os dados dele
Nas minhas api sempre existia uma campo chamado, STATUS
{"STATUS": true, "EMAIL": "[email protected]", "NOME": "Max"}
{"STATUS": false, "MESSAGE": "Usuário ou senha inválidos."}
ai STATUS era o meu campo chave
if(response.STATUS){}
if(response.STATUS){//fazer o que tem que fazer}else{//mensagem de erro ao usuáiro}
como faço a requisição?
Como falei, já que esta fazendo via get
13:26
Sim, ele mostra os dados, mas como no parametro já ta o cpf e email, mostra do cliente fictício (eu acredito que só exista um cliente fictício até agora)
o campo chave no caso seria o cpf e email?
o campo chave ao qual me refiro é algum campo que retorna da sua requisição
por exemplo
no seu retorna você tem alguma identificação do cliente
que no caso é cpf
pelo cpf identifico o cliente
E no retorno da api tem o CPF
?
sim
cpf e email
esses dois sao o que identifica casa cliente
Me mostra no retorno da sua requisição aonde aponta o CPF
13:34
beleza
pera aí
To perando aqui
Acho que seu CODCLI é o ID do cliente
usa ele pra validar
if(clientes.ADADOS.CODCLI.length > 0){ //achou algum usuário}else{ //exibe mensagem de erro}
na validação de login?
isso
Pelo o que eu entendi seria assim
13:43
eu já fiz a validação de cliente
mas é olhando pelo cpf e email
vou te mandar pra tu ver
Lembrando que quando recarregar a página o JS perde os dados, caos queria reaproveitá-los sugiro fazer um sessão (sessionStorage)
KK calma ai você me confundiu agora
você tem a validação no PHP e quer validar no JS
wtf
kkkk
isso aí é pra acessar o bd
quando for fazer login
sim
entendi
13:47
ele olha no bd se o cpf e email existe, se sim, entra, senão nao entra
ai você redireciona ele para a parte de postagens
kkk
e onde o JS, já que ele ta validando o usuário no PHP
esse direcionamento foi mais pra teste
13:48
o js só ta colocando os dados da api
pelo menos assim que eu fiz
kkkk
ta mas o aonde entra esse código na história
?
o JS ta retornando os dados do cliente e você precisava fazer a validação pro login
ai eu sugeri vocÊ fazer a validação pelo retorno da requisição utilizando um campo chave que no caso foi clientes.ADADOS.CODCLI
Nisso eu disse:
usa ele pra validar
if(clientes.ADADOS.CODCLI.length > 0){ //achou algum usuário}else{ //exibe mensagem de erro
isso tudo em js, né?
sim
Ai você me mostrou um script aonde valida o usuário pelo PHP kk
ai fiquei confuso...
É pq é assim, precisei usa o php pq quando fizer o cadastro no site, terei que enviar um email pra pessoa com link pra confirmar o cadastro. Aí quando confirmar pode utilizar o site. E a validação (olhar no bd se o cpf e email existem) fiz pelo php, pois nao achei como fazer pelo js.
E eu uso o js para mostrar os dados da api na tabela (eu to com apenas a api ja consumida, com o cpf e email) aí quando faço cadastro de qualquer pessoa, os mesmo dados serão mostrados (pq o link da api que eu to já ta com o parametro nela)
Ai você tem que fazer o login
por CPF e EMAIL
13:57
isso
você cria um fórmula HTML, com os campos CPF e EMAIL
e quando o usuário clicar em ENTRAR
Vai consumir a API para verificar se o usuário vai ter registro no banco ou nõa
não
Pronto. O js nao verifica se ele tem registro, quem faz isso é o php
o js entra quando o usuario conseguir entrar no site
Kkkk OK
qual é o próximo passo agora?
""""Vai consumir a API para verificar se o usuário vai ter registro no banco ou nõa""""", com isso eu quis dizer, que se a API retornar dados o usuário já existe no banco.
Vou ir almoçar, 13:30 to de votla
votla
volta
ta certo kkk
quando voce voltar continuamos
me chama quando voltar
 
2 hours later…
15:37
Blz
Aonde paramos?
hey
eu descobri que essa api só mostra os dados com parametros, a partir do momento que eu mudo os parametros ela diz que tá vazio, então realmente só tem um usuário ficticio nela
O problema é: como eu faço pra mandar os dados da pessoa que acabou de logar (cpf e email) pro parametro da api? pq aí a api vai fazer um select no bd, e nisso vai mostrar os dados desse cliente
E agora?
O q tens que fazer?
E eu não tenho acesso ao bd que ta a api
Eu imagino que é algo assim: fez login. joga cpf e email pro parametro da api
SIM
ai você verifica se trouxe algum resultado
pelo if que mostrei
se trouxer algum resultado quer dizer que o email e cpf passado está valido
Aí isso já manda pro parametro da api? (se tiver valido)
15:48
Não kk
Esquece os parametros da api
(desculpa, sou apenas uma universitaria auhsauh)
Assim você já passou os parametros
15:50
agora
temos que trabalhar no retorno da api
os dados que ela irá trazer
ou seja aquela lista de informações do objeto JSON que você me mandou imagem.
isso
se a validação que eu fiz é de um jeito, e a que voce falou é de outro muda alguma coisa?
qual validação que você fez?
no php?
isso
que faz o select no bd pra ver se o cpf e email existem lá
isso que achei estranho, você já faz uma validação
no php
fiz, pra o usuário poder entrar no site
15:54
o php pega os dados do banco da api
é o mesmo banco api e validação no php
?
o meu código php pega os dados do banco de usuário, que são cpf e email
Nao tenho acesso ao bd da api
esse é o problema
ele só me deu o link da api
e o link da documentação dela
kkkk
q confusão kk
if(clientes.ADADOS.CODCLI.length > 0){ //achou algum usuário}else{ //exibe mensagem de erro}
Faz isso que mandei então
jogo isso onde? kkkk
16:10
no seu método de login ué kkk
to mt confuso
eu tambem kkkk
infelizmente meu conhecimento de api é pouquíssimo
vou tentar fazer isso aí
Eu "fiz" uma api com praticamente todos os dados que tem na outra
aí vou fazer testes nessa, acho melhor já que eu tenho acesso ao bd e tal
kkkk
se vc fez essa api
faz o seguinte
cria um método na sua api para login
retorna mais ou menos assim:
{"STATUS": true, "NOME": "Nome do usuario", "TOKEN": "CODIFICAOEMAILECPFEMBASE64"}
e como crio um método de login?
Você vai fazer a API em php né/?
eu peguei essa api já pronta, aí inseri as coisas no bd, mas tenho os códigos dela aqui
nao
ta em js
16:24
putz kkk
em php é facinho fazer
vish
em php nao tenho kkk
kkkk
quase certeza que isso vai resolver sua vida
if(clientes.ADADOS.CODCLI.length > 0){ //contém usuario} else { //email e cpf inválido}
eu fico complicada onde coloco isso
no index (login mesmo)?
você tem o fórmulario de login (html) né?
16:33
ta lá
<form> blablabla
input type="text" id="CPF"/>
input type="text" id="email"/>
e tem o submit
input type="submit" value="entrar"/>
no seu formulário você vai colocar assim
<form onsubmit="login()">
no seu javascript você colocar
function login(){
var cpfForm = document.getElementById("#CPF")
var emailForm = document.getElementById("#email")
errei
var cpfForm = document.getElementById("#CPF").value
var emailForm = document.getElementById("#email").value
ou
var emailForm = document.querySelector("#email").value
var cpfForm = document.getElementById("#CPF")
e depois um log pra vermos se está funcionando a função
16:39
console.log("CPF:"+cpfForm + " - Email: "+emailForm)
ai vc fecha a função
}
isso é para pegar os dados do fórmulario com js
ai você preenche o formulario e aperta f12
quando você clicar no submit ele tem que aparecer os dados do formulario
Vou demorar um pouco pra responder, pois tenho que fazer umas coisas urgente aqui
certo
aconteceu nada
wtf
como assim
manda um print do html e do js
16:55
Pera ae
Já testo aqui
beleza
ele ta indo pra url
agora que percebi
mas nao da alert
/NovoTeste/index.php?cpf=000.000.000-00&email=fail%40gmail.com
deve ser pq tirei o method
eu vou ter que sair já. podemos concluir segunda? se for possível, é claro...
eu chamo voce aqui
vixi acho q nem vou lembrar segunda
qualquer manda um aviso pra mim no email
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>testes</title>
</head>
<body>

<form onsubmit="login(event)">
<input type="text" id="CPF" required>
<br>
<input type="text" id="EMAIL" required>
<br>
<input type="submit" name="" value="teste">
</form>

<script src="app.js" charset="utf-8"></script>
</body>
</html>
acime é o html
acima**
function login(evt){

evt.preventDefault()

var cpf = document.getElementById("CPF").value
var email = document.getElementById("EMAIL").value

console.log(cpf)
console.log(email)
}
e a função do js
que ta no app.js

  last day (19 days later) »