我在这里有这个脚本,在加载页面时,它应该首先加载页眉html样板,一些动态段落,然后以页脚html样板结束请求。这两个样板文件都来自外部文件。
经过测试,我收到:
TypeError:无法读取未定义的属性“ toString” 在ReadFileContext.callback(/user_code/index.js:20:23) 在FSReqWrap.readFileAfterOpen上[按完成状态](fs.js:367:13)
我的理解是,我需要 .toString()以确保将从外部文件加载的内容缓冲为字符串。
exports.request = functions.https.onRequest((req, res) => {
fs.readFile('/public/templates/header-template.html', function(_err, data) {
res.write(data.toString());
console.log('Header Loaded');
});
res.writeHead(200, {'Content-Type': 'text/html'});
var q = url.parse(req.url, true).query;
var txt = '<p>Thanks <b>' + q.firstname + ' ' + q.lastname + '</b>. An email has been sent to <b>' + q.email + '</b> with details about your request.';
res.write(txt);
fs.readFile('/public/templates/footer-template.html', function(_err, data) {
res.end(data.toString());
console.log('Footer Loaded');
});
});
知道我在做什么错吗?
答案 0 :(得分:0)
您应该将编码传递给vector<double> copyRow = holder_node[0];
才能从缓冲区转换。
toString()
此外,似乎您的变量data.toString('utf8');
尚未定义,因此可能您的文件不存在。捕获错误并查看问题所在:
data