değiştirmek ve mevcut ben API sunucu REST benim Uygulama isteği iletmek için Express ve Talebi (https://github.com/request/request) kullanılan mevcut benim kod aşağıda gösterilen:nasıl NodeJS için biraz yeniyim NodeJS Talebi Akış yanıtını
app.use('/rest/*', function(req, res) {
req.pipe(request('http://ipaddress/api')).pipe(res);
});
Bu kod, REST API sunucusu Tamam olduğunda çalışır, ancak geri kalan api sunucusu düşerse, uygulama akışı başarısız olur ve hata benim uygulama tarafından yakalanmadığı için nodejs uygulamam da azalır. Sadece hatayı log ve benim NodeJS uygulama çökmesini önleyebilir
app.use('/rest/*', function(req, res) {
req.pipe(request('http://ipaddress/api').on('error', function(err) {
console.log(err);
})).pipe(res);
});
böyle, bu dere hatayı işlemek için bir yol sağlar İsteği github sayfasını kontrol, ama hata yüzden oluştuğunda ben tepkisini değiştirmek istiyorum o değiştirilen tepki, örneğin nihai birine dağıtılması hedefleniyor, ne pseudocode yapmak istiyorum:
app.use('/rest/*', function(req, res) {
req.pipe(request('http://ipaddress/api').on('error', function(err) {
console.log(err);
// what I want to do in pseudocode
response.statusCode = 500;
response.json = {
reason: err.errno
};
})).pipe(res);
});
benim sorunları çözmek için herhangi bir yolu var mı? Herhangi bir fikir için teşekkürler!
gibi işliyor. Bunun yerine yapmanız gereken, çevrimiçi olup olmadığını kontrol etmek için düğüm sunucusundan API sunucusuna HEAD isteği yapmaktır, daha sonra devam ederse ve API isteğini istemciye iletirse. Aksi takdirde, istemciye istediğiniz cevabı gönderebilirsiniz. –