Come indicato nel titolo, la mia app di vele GET richiede una specifica funzione route/controller restituisce badRequest con JSON in un ambiente di sviluppo ma non in un prod ambiente. Perchè è questo?L'ambiente di produzione Sails.js non restituisce la risposta JSON su badRequest ma l'ambiente dev fa
Ecco la funzione di regolazione:
index: function(req, res) {
async.auto({
companies: function(cb) {
User.findOneById(req.session.user.id)
.populate('companies')
.exec(function(err, user)
{
if(err) {
var badRequestData = { error: err };
return cb(badRequestData, null);
} else if(user.companies.length == 0) {
var badRequestData = { error: "This user has no associated companies." };
return cb(badRequestData, null);
}
cb(null, user.companies)
});
},
validateForNullCompanies: ['companies', function(cb, results) {
var nullCompanies = _.where(results.companies, { stripeAccountId: null });
if(nullCompanies.length > 0) {
var badRequestData = { error: "This user needs to authenticate stripe with their company." };
return cb(badRequestData, null);
} else {
return cb();
}
}]
}, function(err, results) {
if (err) {
return res.badRequest(err);
}
return res.ok();
});
},
C'è un motivo per cui i messaggi di richiesta non validi devono essere esposti? Qual è la migliore pratica di esporre gli errori senza bypassare questo? –
Questo è vecchio ma una risposta valida, quindi accetterò. – morcutt