Tôi có đoạn mã này:Yêu cầu không kết thúc bằng Node.js (được sử dụng để làm việc)
var app = require('http').createServer(function(req, res){
console.log(req);
req.addListener('end', function() {
fileServer.serve(req, res);
});
});
var statics = require('node-static');
var fileServer = new statics.Server('./');
app.listen(1344, '127.0.0.1');
app.on('error', function(err){
console.log(err);
})
Nó được làm việc tốt, cho đến khi tôi thực hiện một vài thay đổi, nút cho một lỗi, và khi Tôi đã quay lại, lỗi đó không còn ở đó nữa, nhưng thay vì làm việc như nó đã hoạt động trước khi sự kiện end
không được kích hoạt. Vì vậy, bất cứ điều gì bên trong req.addListener('end', function(){});
không được gọi.
Và ngay cả khi tôi chạy một node.js khác sử dụng cùng một sự kiện, cũng không được kích hoạt. Vì vậy, cũng giống như nếu sự kiện kết thúc của yêu cầu bị hỏng. Nhưng làm sao điều đó có thể được?
Đây không phải là lần đầu tiên nó xảy ra. Lần cuối tôi kết thúc nút cài đặt lại (sau khi thử nhiều thứ khác nhau). Tôi muốn tìm một giải pháp, vì vậy tôi có thể hiểu được vấn đề!
LƯU Ý: Mã gốc bao gồm socket.io và các loại kết nối khác, nhưng tôi vừa dán đoạn mã là ứng dụng bị kẹt.
Cũng có thể hữu ích khi biết cách gỡ lỗi vấn đề!
thử với 'Node v0.8.x' hoặc đọc Stream2 documenation trong http://nodejs.org – InspiredJW
Tôi không thể nói về việc liệu 'fileServer.serve' hoạt động, nhưng nếu bạn lấy ra mọi thứ liên quan đến 'node-static', mã của bạn hoạt động như là-và sự kiện' end' chắc chắn được gọi. Tôi nhớ có vấn đề khi chúng tôi đã thử bằng cách sử dụng 'nút-tĩnh' và bạn có thể tốt hơn bằng cách sử dụng phần mềm trung gian tĩnh từ Kết nối nếu đó thực sự là vấn đề của bạn. http://www.senchalabs.org/connect/static.html –
@InspiredJW Tôi đang ở v0.10.3. Bạn đang nói tôi nên hạ cấp? – limoragni