Właśnie zacząłem wypróbowywać SailsJS kilka dni temu.
Zdałem sobie sprawę, że węzeł jest zakończona, gdy mam nieprzechwycony wyjątek.
Mam listę kontrolerów i każdy z nich wywołuje określony plik JS usługi (Zawiera logiki i wywołania DB) w usługach /.
Czy mogę napisać globalną procedurę obsługi błędów dla wszystkich usług, aby każdy rodzaj błędu występujący w tych usługach był obsługiwany przez nią, a odpowiednia odpowiedź błędu musi zostać przekazana do strony front-end.Najlepsze praktyki dotyczące obsługi wyjątków w SailsJS
Próbowałem za pomocą process.on („uncaughtexception”) lub niektóre z podstawowych wyjątkami ale to musi być dodana do każdego sposobu użytkowania.
Również mogę mieć jeden punkt wspólny dla wszystkich połączeń wykonanych usług od klienta do serwera, przez który wszystko io.socket.post() i io..socket.get() przechodzi
Uprzejmie jakiejkolwiek wskaźnik/artykuł, który pokaże mi wspólne najlepsze praktyki dotyczące obsługi niezatrzymanych wyjątków w SailsJS i używania krótszego kodu zamiast pisania redundantnego kodu we wszystkich usługach.
Naprawdę dobre pytanie. Nigdy nie myślałem o tym wcześniej, ale zasady to kod, który jest wykonywany przed wywołaniem akcji kontrolera. Możesz spróbować owijać logikę kontrolera w bloku catch catch za pomocą zasady i stosując tę zasadę jako domyślną dla wszystkich działań kontrolera. Nie próbowałem tego i to była tylko przypadkowa myśl, która przyszła mi do głowy. Daj znać czy działa. Mogę spróbować później –
To nie jest odpowiedź * jeszcze *, ale miej oko na [strefy] (http://strongloop.com/strongblog/announcing-zones-for-node-js/) - między innymi rzeczy rozwiązuje problem obsługi błędów w nodejs. –