Eu preciso criar uma api post e pedir nome e email do usuário retornando pra ele o id, nome e email sem usar um banco de dados. Pra isso eu preciso fazer um contador do Id, quando eu passo esse id ele não acrescenta e fica sempre no mesmo número, help!
Criei uma variável global id:
Conts id = 0
Depois fiz assim:
router.post('/criarusu', (req,res) => {
const {nome,email} = req.body
const currentContent = readfile()
currentContent.push({id,nome,email})
fs.writeFileSync('./user/dados.json', JSON.stringify(currentContent), 'utf-8')
res.send(currentContent)
id++
})
resultado em json:
{
"id": 0,
"nome": "Ramon0"
}, {
"id": 0,
"nome": "Ramon1"
}
Já mudei a ordem do id pro começo e ele mudou pra 1, mas só fica em 1 com os novos dados, mas quero que comece em 0 mesmo e vá acrescentando. Estou aprendendo ainda, se puder me ajudar muito obrigada!
SOLUÇÃO:
Nesse caso eu desisti de começar com zero o contador e criei uma variável que gera um número aleatório com letras e números. Assim:
router.post(’/criarusu’, (req,res) => {
const {nome,email,genero} = req.body
const currentContent = readfile()
const id = Math.random().toString(32).substr(2,9)
currentContent.push({id,nome,email,genero})
writeFile(currentContent)
res.send({id,nome,email,genero})
})
Ou, caso queira começar a contar do zero, pode seguir a orientação do @Elifaz, ou até criar uma API fake como sugeriu o @Lucas_Camara. Obrigada pela participação meninos!