如何创建环境变量来将数据存储在文件中?

时间:2017-03-17 07:09:51

标签: node.js

实际上,我正在Nodejs做一些项目。我需要一个配置文件,以便将数据存储到文件系统,但我不知道如何编写配置文件来存储数据到文件。请帮我解决一下这个。提前谢谢

3 个答案:

答案 0 :(得分:0)

如果您的意思是需要一些常量和业务逻辑/数据文件来读取,您可以使用require模块在脚本中包含该文件。

例如:你的文件名是test.json,然后是:

var test = require('test.json');

此外,您可以在文件中使用CONSTANT作为'test.CONSTANT'

注意:请确保在需要的地方使用module.exports。详细信息为here

答案 1 :(得分:0)

通常人们使用JSON来存储配置和内容,因为它非常javascripty ..你可以简单地制作一个JSON配置文件。如果您需要存储一些特殊数据,如 SECRET URL ,只需使用环境变量。仅供参考我发现你的问题不清楚。这是否回答了你的问题。

{
  "articles": {
    "mappings": {
      "article": {
        "_all": {
          "enabled": false
        },
        "_source": {
          "enabled": false
        },
        "properties": {
          "author": {
            "type": "text",
            "norms": false,
            "analyzer": "keyword"
          },
          "content": {
            "type": "text",
            "norms": false
          },
          "date": {
            "type": "date"
          },
          "feed_canonical": {
            "type": "boolean"
          },
          "feed_id": {
            "type": "integer"
          },
          "feed_subscribers": {
            "type": "integer"
          },
          "title": {
            "type": "text",
            "norms": false
          },
          "url": {
            "type": "keyword"
          }
        }
      }
    }
  }
}

答案 2 :(得分:0)

听起来您正在寻找以下NPM模块/库 - dotenv。您只需将require('dotenv').config();放在最顶层(use strict;之后),然后创建文本文件,该文件将作为示例阅读:

url_prefix='mongodb://' url_ip='@localhost' port=':27017/' dbase='NameofDB'

当然,您可以将任何喜欢的内容添加到此文件中。请记住它是一个文本文件,不应包含空格等。

虽然.env文件的默认值位于项目的根目录中,但您实际上可以将其放在任何您喜欢的位置,只需输入:

require('dotenv').config({path: '/custom/path/to/your/env/vars'});

(上面是从dotenv文档中获取的,它在我在项目中使用它时起作用。)

要获取任何全局变量,只需键入: process.env.url_prefix

显然,从那里你可以从process.env语句为你的数据库构建所需的入口代码,例如: process.env.url_prefix+process.env.url_ip等。或 ${process.env.url_prefix}${process.env.url_ip}

使用dotenv可以让你保持对那些process.env全局变量的理智控制。

请注意有一个问题!注意不要覆盖代码中的任何全局变量。因为只要您的Node进程正在运行,它们就会被覆盖。