2014-10-21 2 views
0

Если у меня есть HTTPServer в Node.js, который отбывающий сайт на порт 3000.node.js HTTP открытие статического TextFiles в браузере

var httpserver = http.createServer(app).listen(app.get('port'), function(){ 
    console.log('Express server listening on port ' + app.get('port')); 
}); 

app.get('/', function(req, res) { 
    res.render('index.html'); 
}); 

Мне нужно получить доступ к текстовому файлу, расположенный в/Public/

Если я, например, делаю localhost: 3000/other_site.html, если этот файл other_site.html находится в/public/он открывает его, но если файл является txt, он не открывает его.

Есть ли решение для этого без установки HTTP-запроса, подключения или других модулей npm?

С уважением,

ответ

1

Вы можете использовать экспресс? Если да, то

app.use(express.static(__dirname + '/public')) 

делает трюк.

Если нет, попробуйте найти архивы :) Using node.js as a simple web server

+0

я использую экспресс. Я добавил то, что вы предложили. При вызове http: // localhost: 3000/draw.txt я все еще получаю сообщение «Can not GET /draw.txt» – Egidi

+0

try /public/draw.txt? – LL1138

+0

Не удается GET /public/draw.txt – Egidi

0

Какая ошибка вы получаете?

if you experiencing browser error, try sending response header and set Content Type text/html and retry 

Пример кода

fs.readFile('myfile.txt', function(error, file) { 
     response.writeHead(200, {'content-type':'text/html'}); 
     response.end(); 
    }); 
Смежные вопросы