是否可以从节点中的open()获取响应。 URL在新选项卡中打开,并返回一些响应。我需要那些响应值来进一步我想要的步骤。是否有可能获得响应,如果是这样,任何人都可以告诉我如何从中获得响应。我还想关闭打开的标签,它只能使用require(' child_process')。spawn或者使用open我们可以关闭标签。
open(url, function (err) {
if (err)
throw err;
res.end()
});
提前致谢。
答案 0 :(得分:1)
答案:不。
原因:open只是child_process.exec命令的一个很好的包装器。它处理不同的操作系统和浏览器。它将回调传递给child_process.exec回调。除非有一些我不知道的魔法,否则浏览器不会将响应返回给stdout。
参考文献:https://github.com/pwnall/node-open/blob/master/lib/open.js和https://nodejs.org/api/child_process.html#child_process_child_process_exec_command_options_callback
解决方案:在节点或设置nightwatch或nemo中使用selenium服务器设置http连接,这样您就可以访问dom而不仅仅是终端打开命令。或者你可以像@jm_____所暗示的那样,无情地使用僵尸,casper或幻像。