我有一个nodejs代码,在某些时候它使用一个新标签来显示结果。我得到npm-open,它在浏览器的一个新标签中显示我的结果,但是当我将其部署在linux服务器中时,它既不打开新标签也不抛出任何错误?
open( req.protocol + '://' + req.get('host')+"/view-document/?logos="+ logos+"&comp_name="+result_3[0].name +"&emp_name="+empname+"&start_date="+sdates+"&end_date="+edates+"&position="+designation+"&template=template1"+"&emp_id="+emp_id+"&issue_date="+issue_date+"&title="+title, function (err) {
if ( err ) {
res.redirect("/view-document/?logos=" + logos+"&comp_name="+result_3[0].name +"&emp_name="+empname+"&start_date="+sdates+"&end_date="+edates+"&position="+designation+"&template=template1"+"&emp_id="+emp_id+"&issue_date="+issue_date+"&title="+title);
return;
}
});
答案 0 :(得分:2)
怎么可能?
open
命令是一种使脚本与正在运行的OS交互的方法,可以告诉脚本打开URL,图像等。如果在本地计算机上运行脚本,这很好并按预期工作。
如果您在服务器上运行脚本,则它无法将其请求传达给本地计算机。考虑一下–随机的网页/服务器是否应具有与客户端计算机上的操作系统进行交互的能力?
要进行类似的工作,您需要将脚本分为两部分:
open
命令