如果我运行下面的代码,并取消注释“setEncoding”行,则会收到以下错误信息:
/usr/local/test-server/test.js:78
/usr/local/test-server/test.js:78
res.setEncoding('utf8');
^
类型错误:对象#没有“setEncoding”方法
如果不加这行代码,所有的东西都能按预期工作——除了浏览器抱怨未声明的字符编码。
在文档、SO、GitHub问题列表或广泛的谷歌搜索中都没有找到有用的信息。node.js版本是最新的:0.8.6
var https = require('https');
var sslPrivateKey = fs.readFileSync('./pk.pem');
var sslCert = fs.readFileSync('./cert.pem');
var sslOpts = { key: sslPrivateKey, cert: sslCert };
var server = https.createServer(sslOpts, function(req, res) {
if ('GET' === req.method) {
res.writeHead(200, {'Content-Type': 'text/plain','charset': 'utf8'});
//res.setEncoding('utf8');
res.write('You are here' + "\n");
res.end();
}
}
server.listen(8080);