2011-12-03 33 views
52

Thử lần đầu node.js. Thiết lập nút, thiết lập ứng dụng mẫu từ trang web nodejs.org. Có thể khởi động máy chủ tốt, nhưng console.log() không thực sự ghi lại bất cứ điều gì. Đã thử bảng điều khiển Javascript trong Chrome, Firefox và Safari - không có gì xuất hiện trong nhật ký. Ngoài ra kiểm tra Console trên máy Mac của tôi chỉ cho đá, không có gì là có một trong hai. Tôi đang thiếu gì?Bàn điều khiển Node.js.log() không ghi nhật ký bất cứ điều gì

(Dưới đây là đoạn code ví dụ mà hoạt động nhưng không đăng bất cứ điều gì.)

var http = require('http'); 
http.createServer(function (req, res) { 
    res.writeHead(200, {'Content-Type': 'text/plain'}); 
    res.end('Hello World\n'); 
}).listen(1337, "127.0.0.1"); 
console.log('Server running at http://127.0.0.1:1337/'); 
+0

Bạn đang chạy ứng dụng này như thế nào? Môi trường gì? Nếu nó nằm trên bàn điều khiển trên máy cục bộ của bạn thì bạn sẽ thấy các nhật ký đến từ ứng dụng ở đó. Nếu bạn đang sử dụng một giải pháp lưu trữ thì họ thường cung cấp một số cách để xem nhật ký thông qua giao diện web và thông qua công cụ API dòng lệnh của họ. – Treffynnon

+0

Tôi không thể sao chép điều này trên máy của mình. Điều này hoạt động tốt. Phiên bản nào bạn đang chạy? –

+3

console.log() phát ra các chuỗi vào cửa sổ đầu cuối (giao diện dòng lệnh nơi ứng dụng được chạy) –

Trả lời

115

Trong một máy chủ Node.js console.log đầu ra đến cửa sổ thiết bị đầu cuối, không để cửa sổ giao diện điều khiển của trình duyệt.

Bạn đang chạy máy chủ của mình bằng cách nào? Bạn sẽ thấy đầu ra trực tiếp sau khi bạn bắt đầu nó.

+58

Tôi sẽ bỏ phiếu cho câu hỏi của mình nếu có thể. Không thể tin rằng tôi đã không thực hiện kết nối này. – chrismanderson

+2

tất cả mọi người nhìn chằm chằm với nodejs hy vọng như nhau ... đầu ra giao diện điều khiển nên đăng nhập vào giao diện điều khiển của trình duyệt, cũng như các thiết bị đầu cuối. –

+9

@Brad Không nên. Không phải tất cả các chương trình nút đều là các máy chủ web và thậm chí nếu chúng vẫn không có ý nghĩa. – david

8

Điều này có thể gây nhầm lẫn cho bất kỳ ai sử dụng nút jj lần đầu tiên. Nó thực sự có thể ống đầu ra giao diện điều khiển nút của bạn để bàn điều khiển trình duyệt. Hãy xem connect-browser-logger on github

CẬP NHẬT: Như được chỉ ra bởi Yan, trình kết nối-trình duyệt-logger dường như không còn tồn tại. Tôi muốn giới thiệu NodeMonkey như được mô tả chi tiết tại đây: Output to Chrome console from Node.js

+0

Dự án github không còn tồn tại nữa – yan

1

Sử dụng hiện đại - không đúng với nút console.log được chụp và chuyển tiếp đến trình duyệt.

nút --inspect myApp.js

hoặc để nắm bắt khai thác gỗ đầu --inspect-brk có thể được sử dụng để ngăn chặn các chương trình trên dòng đầu tiên của mô-đun đầu tiên ...

nút - inspect-brk myApp.js

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