2012-01-01 19 views
6

Güvenlik için, node.js uygulamasında maksimum bir istek uzunluğu ayarlamak istiyorum. (Sınırsız istek uzunluklarına izin veren web sunucularından yararlanan birçok güvenlik açığı vardır).maksimum istek uzunlukları node.js içinde

Bu mümkün mü? Zaten var mı?

+0

Olası kopyalar [node.js HTTP Get URL Uzunluğu sınırlama] (http://stackoverflow.com/questions/32763165/node-js-http-get-url-length-limitation) –

cevap

1

Bir müşterinin sizi POST yoluyla gönderebileceği verilere başvurduğunuzu tahmin ediyorum. Eğer Express kullanıyorsanız, size ulaşmak için limit ortakatmanını bu: http://senchalabs.github.com/connect/middleware-limit.html

orada yaptıklarından kısa bir versiyonudur:

req.on('data', function(chunk){ 
    received += chunk.length; 
    if (received > bytes) req.destroy(); 
}); 
ait
+1

Ayrıca GET'ten bahsediyorum - örneğin bkz. http://nikic.github.com/2011 /12/28/Supercolliding-a-PHP-array.html Sınırsız müşteri verilerini kabul etmekten kaynaklanan sorunlar için. –

+0

GET istekleri için daha kolay, örneğin bir GET isteğinde yalnızca X değişkenlerine izin veren bir ara katman oluşturabilirsiniz. Örnek: bir regex kullanarak kaç '&' sembolünün istek URL'sinde olduğunu belirlersiniz. Maksimum sayı aşılırsa, bağlantıyı ortadan kaldırırsınız. – alessioalex

+0

Bu cevap şu anda modası geçmiş ve yanlış. –

İlgili konular