在 node.js CLI 中获取浏览器响应或回调

Get browser response or callback in node.js CLI

Snyk 在用户第一次使用时要求进行身份验证。它看起来像这样:

  1. 用户在 cmd 中输入 snyk auth
  2. 选项卡在浏览器中打开并显示登录页面。
  3. 登录。
  4. Snyk 收到我已登录的响应并继续下一步。

1 - 3 对我来说是显而易见的。但我不明白节点如何知道我已经登录。我猜它与 HTTP headers 有关,但我仍然不知道它在代码中应该是什么样子。我试图在 cli/commands/auth.js 中找到我的答案,但代码对我来说太复杂了。

您可以创建一个带有回调路由的临时http服务器用于身份验证;就像您在简单的普通 Web 应用程序中所做的那样。
认证后,您可以保存收到的信息(例如在文件中)并停止http服务器。