Comment puis-je voir les erreurs lancées dans les méthodes Meteor?

J'aimerais voir des instances de Meteor.Error ainsi que tout ce qui est jeté. Du côté serveur, je regarde ce qui est imprimé sur la console après avoir exécuté la commande météore (en cours de développement sur localhost: 3000). Sur le client, je regarde la console JS.

Quand un Meteor.Error est lancé sur le client, je le vois sur la console du client. Quand une erreur Meteor.Error est lancée sur le serveur, je ne vois rien de chaque côté. Quand d'autres types d'erreurs sont lancés de part et d'autre (par exemple, assert (false) avec le paquet mrt assert), je ne le vois d'aucun côté.

3

1 Réponses

Cela dépend de l'endroit où vous lancez le Meteor.Error , il faut un contexte à donner au client.

Si vous lancez un Meteor.Error dans une méthode, vous le verrez revenir dans le err du rappel de l'appel côté client. par exemple

Du côté serveur

Meteor.methods({
    'crashme':function() {
        throw new Meteor.Error(500, "Error Title", "details", "more details");
    }
});

Côté client

Meteor.call("crashme", function(err, result) {
    console.log(err);
    //--> Prints the thrown error
});
5
ajouté
Merci, cela fonctionne avec Meteor.Error sur le serveur. Il affiche également "Erreur serveur interne [500]" pour assert sur le serveur. Comment puis-je voir du côté serveur le texte complet de l'erreur assert ? En outre, il ne montre pas les erreurs assert qui se produisent sur le client - comment puis-je les voir?
ajouté l'auteur Loren, source