使用Node.js的命令行界面

3
我正在使用node.js创建命令行界面。它具有登录功能,登录后需要根据用户从列表中选择的选项显示输出。我面临的问题是它在第一个结果后退出节点。它正在要求再次登录。如果从应用程序退出也可以,但仍然应该能够获取已登录用户的详细信息。例如,当我从列表中选择 显示用户资料 时,它会显示用户详细信息。现在,我退出应用程序(而不是cli控制台)。再次登录以查看其他结果。除此之外,我们是否可以为已登录用户维护任何会话类型的东西,以便我们可以允许用户进入系统而无需不断重新登录。或者建议我其他解决方案来解决这个问题。
对不起,我的英语很差。希望你理解我的问题。(附上一张图片)
我正在使用inquirer进行用户输入,commander进行帮助,request进行HTTP操作。如果需要,我可以分享我的代码。

你必须从应用程序中“退出”吗?难道你不能只是重复这个过程吗? - laggingreflex
退出应用程序是可以的,但我已经登录了,这样就会再次登录。我们能为维护用户在线状态做些什么吗? - iLaYa ツ
抱歉,我以为你需要从应用程序退出,但我猜你不需要。如果是这种情况,我认为解决方案就是简单地不要退出 应用程序,即通过重复要求用户再次选择选项的步骤,在循环中进行(可能还可以添加一个退出选项)。这就是你想要的吧? - laggingreflex
没错。好的,我可以重复列表。假设我退出应用程序?我们需要重新登录吗?我们不能至少保持几分钟的登录状态吗? - iLaYa ツ
也许可以将登录凭据本地保存为JSON格式?根据您需要的安全性,如果原始文本适用于您,那就太好了。如果不是,那么您必须考虑加密登录信息,以便只有您使用的节点应用程序知道解密它并重复使用登录详细信息的“密钥”。 否则,如果您控制登录后端,则可以尝试返回一个在一天(或多天)后过期的临时登录“令牌”,将该令牌本地保存(加密/或不加密,由您选择),并允许您的后端系统使用令牌在幕后执行这些快速登录 - chamberlainpi
1个回答

3

Vorpal.js 是为解决这一具体问题而制作的。它的工作和感觉几乎与Commander完全相同,但一旦命令结束,你不会退出应用 - 它会将你带入一个你创建的交互式CLI环境中。它使用Inquirer进行提示。

免责声明:本人编写了Vorpal.js


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接