4
노드 버전 0.10.3 및 Express 3.1.1을 사용하고 있습니다.보낸 후 헤더를 설정할 수 없습니다.
나는 간단한 응답을 반환하기 위해 노력하고있어,하지만 난 다음 오류 받고 있어요 : 나는 그것에 대해 많이 읽은
http.js:692
throw new Error('Can\'t set headers after they are sent.');
^
Error: Can't set headers after they are sent.
at ServerResponse.OutgoingMessage.setHeader (http.js:692:11)
을, 그리고 많은 솔루션을 시도하지만 난 아직도 그 받고 있어요 오류.
/**
* Module dependencies.
*/
var express = require('express')
, http = require('http')
, path = require('path')
, socketio = require('socket.io');
var app = express()
, server = http.createServer(app)
, io = socketio.listen(server);
app.configure(function(){
app.set('port', process.env.PORT || 3000);
app.set('views', __dirname + '/views');
app.set('view engine', 'hjs');
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));
});
app.configure('development', function(){
app.use(express.errorHandler());
});
server.listen(app.get('port'), function(){
console.log("Express server listening on port " + app.get('port'));
});
io.configure('production', function(){
io.enable('browser client etag');
io.set('log level', 1);
});
io.configure('development', function(){
io.set('log level', 1);
});
io.sockets.on('connection', function(socket) {
socket.on('event', function(event) {
socket.join(event);
});
});
require('./routes')(app, io);
루트 /하는 index.js :
res.render('index', { title: 'Express' });
app.js - 내가 사용했던 노드 관리자와 나는 그 줄 끝에서 오류를 받고 있어요
var utils = require('../utils') , config = require('../config') , io; module.exports = function(app, socketio) { io = socketio; app.get('/', index); }; var index = function(req, res){ res.render('index', { title: 'Express' }); };
보기/index.hjs :
01 23,516,<!DOCTYPE html>
<html>
<head>
<title>{{ title }}</title>
<link rel='stylesheet' href='/stylesheets/style.css' />
</head>
<body>
<h1>{{ title }}</h1>
<p>Welcome to {{ title }}</p>
</body>
</html>
package.json :
{
"name": "blabla",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "app.js"
},
"dependencies": {
"express": "3.0.3",
"hjs": "0.0.4",
"cradle": "0.6.4",
"twiliosig": "0.0.1",
"socket.io": "0.9.11"
},
"subdomain": "blabla",
"engines": {
"node": "0.6.x"
}
}
어떤 단서?
당신이하지 않는 것 같습니다 게시 코드와 테스트. – robertklep
같은 node.js 버전에서 표현 하시겠습니까? – ohadinho
예, 동일한 버전입니다. 나는 당신의 문제를 일으킬 수있는 당신의 코드에서 명백한 것을 보지 않을 것이다. – robertklep