Cuando ejecuto el código, el formulario se llena por primera vez, el resultado se muestra bien. pero cuando actualizo la página o hago clic en enviar, aparece este error:
_http_outgoing.js:371 throw new Error('Can\'t set headers after they are sent.');
Código para el programa:
router.post('/send', function(req, res, next) { var currentUser=req.body.currentUserAddress var reciever= req.body.Addressedestinataire; var amount = req.body.somme; var data=[{"Spalte":amount}]; var s =JSON.stringify(data[0].Spalte); var valueToken = JSON.parse(s); mytoken.transfer.sendTransaction(currentUser,reciever,amount,{from :web3.eth.accounts[0],gas:5000000},function (error, result) { if(result) { let event = mytoken.Transfer(); event.watch(function(err, response) { if (err) { console.log ("Error="+ err); } if (!err) { let addressEvent= response.address; let addressTo=response.args.to; let addressFrom =response.args.from; Transaction={addressFrom,addressTo,amount,date} db.open(function(err, db) { let collection = db.collection("Transaction"); collection.insertOne(Transaction, function(err, result1) {assert.equal(null, err);}); db.close(); }); res.setHeader('Content-Type', 'application/json'); res.send(JSON.stringify({addressEvent,addressFrom,addressTo,amount})); } }); } else{ console.log(error); } }); });`Cualquier sugerencia sería realmente apreciada.
db.open(function(err, db) { let collection = db.collection("Transaction"); collection.insertOne(Transaction, function(err, result1) { assert.equal(null, err); res.setHeader('Content-Type', 'application/json'); res.send(JSON.stringify({addressEvent,addressFrom,addressTo,amount})); }); db.close(); });pruebe el código anterior, está un poco perdido en el infierno de devolución de llamada allí, los encabezados se envían antes de que se abra la base de datos.