node.js - 如何从nodejs中打开的包获取响应

标签 node.js

是否可以从node.js中的open()获取响应? URL 在新选项卡中打开并返回一些响应。我需要该响应值来执行我想要的进一步步骤。是否有可能得到回应,如果可以的话,任何人都可以告诉我如何从中得到回应。我还想关闭打开的选项卡,只能使用 require('child_process').spawn 或使用 open 我们可以关闭选项卡。

open(url, function (err) {
   if (err) 
      throw err;
   res.end()
});

提前致谢。

最佳答案

答案:不会。

原因:open 只是 child_process.exec 命令的一个很好的包装。它处理不同的操作系统和浏览器。它将回调传递给 child_process.exec 回调。浏览器不会将响应返回到标准输出,除非那里有一些我不知道的魔法。

引用文献:https://github.com/pwnall/node-open/blob/master/lib/open.jshttps://nodejs.org/api/child_process.html#child_process_child_process_exec_command_options_callback

解决方案:在 Node 中自行设置 http 连接,或者使用 selenium 服务器设置 nightwatch 或 nemo,这样您就可以访问 dom,而不仅仅是终端打开命令。或者你也可以像 @jm_____ 建议的那样,用僵尸、卡斯帕或幻影去 headless 。

关于node.js - 如何从nodejs中打开的包获取响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35602186/

相关文章:

javascript - Node 验证器和异步验证

javascript - 从 Node API 端点解析表达式( bool 值)

node.js - 无法在heroku中的nodejs上发帖

node.js - 我应该使用哪个 nodejs 库来写入 HDFS?

node.js - 无权访问此资源/API (GCP)

node.js - 无法弄清楚为什么docker compose up没有运行我的React JS App

node.js - 使用 node-imap 和 mailparser 解析的 gmail 不正确

node.js - AZURE 移动服务在表的插入脚本中转发 POST 请求

javascript - HTTP 缓存 - 设置缓存控制 header 后,资源未从浏览器缓存提供服务

javascript - 等待异步函数完成而不添加回调