Boa tarde galera estou com um problema ao codar uma api que séria essa daqui
eu queria uma ajudar de como posso levar o token de autenticação pras demais página para poder enviar os dados, esse atualmente é meu código em java script e tenho um formulário em html que está passando os dados para o javascript para poder enviar para api
function fazPost(url, body) {
console.log("Body=", body)
let request = new XMLHttpRequest()
request.open("POST", url, true)
request.setRequestHeader("Content-type", "application/json")
if(authorization){
request.setRequestHeader("Authorization", "Bearer <token>" + authorization)
}
request.send(JSON.stringify(body))
request.onload = function() {
console.log(this.responseText)
}
return request.responseText
}
async function efetuarLogin() {
event.preventDefault()
let url = "https://apiacertpixanec.acertpix.com.br/api/Auth/login"
let nome = document.getElementById("nome").value
let senha = document.getElementById("senha").value
console.log(nome)
console.log(senha)
user = {
"username": nome,
"password": senha
}
fazPost(url, user)
}
function cadastrarParceiro() {
event.preventDefault()
let url = "api/Partner/Insert"
let parceiro = document.getElementById("parceiro").value
let documentNum = document.getElementById("documentNum").value
let notificationFraudDate = document.getElementById("notificationFraudDate").value
let debit = document.getElementById("debit").value
let telephone = document.getElementById("telephone").value
let address = document.getElementById("address").value
let city = document.getElementById("city").value
let state = document.getElementById("state").value
cadastrarParceiros = {
"name": parceiro,
"documentNumber": documentNum,
"notificationFraudDate": notificationFraudDate,
"debit": debit,
"telephone": telephone,
"address": address,
"city": city,
"state": state
}
fazPost(url, cadastrarParceiros)
}```
Nesse momento que faz o login, pode inserir esse trecho:
async function efetuarLogin() {
event.preventDefault()
let url = "https://apiacertpixanec.acertpix.com.br/api/Auth/login"
let nome = document.getElementById("nome").value
let senha = document.getElementById("senha").value
console.log(nome)
console.log(senha)
user = {
"username": nome,
"password": senha,
}
//acredito que esse post aqui em baixo retorna alguns dados, certo?
const user = await fazPost(url, user);
const userDataStore = {
username: user.nome,
token: user.<token>, //Esse <token> é o JWT
... //se quiser incluir algo a mais tb, pode incluir
}
localStorage.setItem("@meu-sistema", JSON.stringfy(userDataStore));
}
Depois quando vc quiser fazer esse cadastrarParceiro, pode fazer assim:
Tentei desse jeito aqui porém me apresentou esse erro olha, e aquele post retorna sim o nome de usuário e token, porém na hora de efetuar login eu tenho que acessar usando o cpf ai ele gera o nome do usuario e token abaixo
Error que apresentou quando tentei logar: Uncaught ReferenceError: efetuarLogin is not defined
async function efetuarLogin() {
event.preventDefault()
let url = "api/Auth/login"
let nome = document.getElementById("nome").value
let senha = document.getElementById("senha").value
console.log(nome)
console.log(senha)
user = {
"username": nome,
"password": senha,
}
//acredito que esse post aqui em baixo retorna alguns dados, certo?
const user = await fazPost(url, user);
const userDataStore = {
username: user.nome,
token: user.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm
}
localStorage.setItem("@meu-sistema", JSON.stringfy(userDataStore));
}