SORU
22 AĞUSTOS 2011, PAZARTESİ


Node.js express.js uygulamalar için hata işleme ilkeleri?

Hata farklı diğer çerçevelere göre node.js Express.js uygulamalar yapılır/raporlama gibi görünüyor. Aşağıdaki gibi çalıştığını anlamak doğru olur mu?

A)Algılageri arama işlevleri için parametre olarak onları alarak hataları. Örneğin:

doSomethingAndRunCallback(function(err) { 
    if(err) { … }
});

B)Raporbir sonraki(err) çağırarak, Ara yazılım hataları. Örnek:

handleRequest(req, res, next) {
    // An error occurs…
    next(err);
}

C)Raporhata atarak YOLLARI hataları. Örnek:

app.get('/home', function(req, res) {
    // An error occurs
    throw err;
});

D)Koluuygulama üzerinden kendi hata işleyicisi yapılandırma hataları.() hatası veya bir genel hata işleyicisi kullanın. Örnek:

app.error(function(err, req, res, next) {
    console.error(err);
    res.send('Fail Whale, yo.');
});

Bu dört ilke tüm hata işleme/node.js express.js uygulamalar raporlama için temel oluşturur?

CEVAP
22 AĞUSTOS 2011, PAZARTESİ


Node.js işleme hatası genellikle bu biçim). En geri ilk tartışma ya null gibi bir hata nesnesi döndürür.

Express.js katman ve katman sözdizimi kullanır B) ve E) (aşağıda belirtilen).

C) Eğer bana sorarsan kötü bir uygulamadır.

app.get('/home', function(req, res) {
    // An error occurs
    throw err;
});

Kolayca yukarıdaki gibi yazabilirsiniz

app.get('/home', function(req, res, next) {
    // An error occurs
    next(err);
});

Katman sözdizimi get bir istek içinde geçerlidir.

D) gibi

(07:26:37) tjholowaychuk: app.hata 3'te kaldırılır.x

TJ sadece app.error E lehine kaldırılmış olduğunu doğruladı

E)

app.use(function(err, req, res, next) {
  // Only handle `next(err)` calls
});

4 (4 bağımsız değişkenler) uzunluğunda olan herhangi bir hata katman katman olarak kabul edilir. next(err) çağırdığında bağlamak hata tabanlı katman gider ve çağırır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jonnyriddlin1

    Jonnyriddlin

    4 Ocak 2007
  • thelonelyisland

    thelonelyisl

    23 Aralık 2005
  • Vortez

    Vortez

    27 Temmuz 2009