这是我的代码:
app.post('/convert', function(req,res){
var auxiliar = "somo Ubuntu command line(this works)";
exec(auxiliar, function(err, stdout, stderr){
if(err){
console.log(err);
}
else{
console.log("Conversion succesful");
res.sendFile(path.join(__dirname, 'views/test.html'));
}
});
});
我想要做的是在exec 完成时将html文件更改为test.html。但是当它完成时它打印得很好(“转换成功”)但html不会改为test.html。我怎么解决这个问题?
提前致谢
答案 0 :(得分:0)
假设在客户端使用ajax调用调用/ convert。
调用/提交POST请求/异步转换(ajax)不会使浏览器呈现新页面。
创建一个带有action属性的表单作为/ convert并提交表单。这应该呈现test.html。
动态表单
$('<form>', {
"id": "dynamicForm",
"html": '<input type="text" id="input" name="input" value="' + jsonString + '" />',
"action":"/convert",
"method":"post"})
.appendTo(document.body).submit();
<强>快速强>
var bodyParser = require('body-parser')
app.use(bodyParser.urlencoded({
extended: true
}))
app.use(bodyParser.json());
app.post('/convert',function(request,response){
var input=Json.parse(request.body);
})
答案 1 :(得分:0)
您是否尝试过res.render(&#34; ../ views / test.html&#34;)或者视图目录可能不正确