gpt4 book ai didi

node.js - 使用 npm/nodejs 命令行实用程序保留用户首选项的最佳方法

转载 作者:搜寻专家 更新时间:2023-10-31 22:24:10 28 4
gpt4 key购买 nike

我正在编写一个 nodejs cli 实用程序(旨在全局安装的 NPM 模块),它需要存储一些用户提供的值。在系统上存储这些值的最佳方式是什么?

例如,我是否应该在下面创建自己的配置文件:/etc/{my-utility-name}/conf.json 并在我的 install 中初始化此目录+文件 脚本

( https://npmjs.org/doc/misc/npm-scripts.html )

最佳答案

看问题和评论我觉得有两个问题需要解决:

  1. 保存位置:如果有用户特定的设置,那么按照Linux中常见的模式,最好保存在用户主目录下的隐藏目录中。因此,您最好将其保存在目录 $HOME/.{yourAppName}/someFile

    E.x: Pidgin saves it in: /home/kushal/.purple/...("." prefix to folder name makes it hidden)
       You can save it in: /home/$HOME/.myawesomeNPMModule/...

    注意:如果您还针对 Windows 平台,那么您需要进行平台检查并决定使用哪个路径。

    In windows Vista and above it goes in$WIN_INSTALLATION_DRIVE\Users\$USER_NAME\AppData\Local\YourAppName...

    In windows XP it goes in $WIN_INSTALLATION_DRIVE\Documents and Settings\$USER_NAME\Local Settings\Application Data\Local\YourAppName\...

    是的,跨平台使生活变得困难,或者至少添加了一些 IF 语句。 ;)

  2. 如何保存:您可以轻松地将凭据保存在 JSON 文件中。现在,由于您需要保护数据并且不被非法访问读取,最好的方法是对其进行加密。 NodeJs Crypto 模块非常易于使用,您可以在几行中使用它来加密/解密您的设置文件。您的应用程序只会知道加密密码,因此您的应用程序只能解密它。

    我建议使用 AES-192 来加密文件。

希望对您有所帮助!

关于node.js - 使用 npm/nodejs 命令行实用程序保留用户首选项的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19441921/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com