2013-04-06 40 views
5

Làm cách nào để kết thúc yêu cầu Express 3? res.end() chắc chắn không dừng quá trình xử lý.Chấm dứt yêu cầu ExpressJS

exports.home = function(req, res) { 
    res.end(); 
    console.log('Still going, going...'); 

Trả lời

6

Bạn cần phải return. Ví dụ:

exports.home = function(req, res) { 
    return res.end(); 
    console.log('I will never run...'); 

res.end() chỉ cần hoàn thành và xóa phản hồi cho khách hàng. Cũng giống như bất kỳ hành động nào khác, tuy nhiên, điều đó không yêu cầu JavaScript ngừng chạy vì vậy chúng tôi cần phải rõ ràng return trong số chức năng (mặc dù tôi có thể đặt câu hỏi tại sao bạn có mã sau khi xóa phản hồi mà bạn không thực sự muốn chạy ...?).

+0

Ah gần như đã có nó! Tôi đã res.send (500) theo sau là return res.end() và nó looped mãi mãi - return res.send (500) đã cho tôi những gì tôi cần. Để trả lời câu hỏi của bạn, tôi chỉ đơn giản là kiểm tra sự hiện diện của một số biến bắt buộc (đối với nguồn cấp dữ liệu api) và muốn giải cứu thay vì đóng gói phần còn lại của mã trong vòng điều kiện. – cyberwombat

Các vấn đề liên quan