Javascript 如何在Stampery API.JS文件中设置API密钥

Javascript 如何在Stampery API.JS文件中设置API密钥,javascript,node.js,express,Javascript,Node.js,Express,我正在筹建Stampery。我无法确定在这个API.JS文件中设置字符串API键的位置。文档中说要将STAMPERY_令牌设置为API密钥,但不确定如何执行此操作。任何帮助都将不胜感激 Stampery的链接是 我在Azure网站中添加了以下内容。如果这足够: 在启动服务器之前,您需要设置STAMPERY\u TOKEN环境验证 例如,您可以这样做(在Windows中)set STAMPERY\u TOKEN=your TOKEN&&node app.js有两种方法可以将其添加到环境中(对于Ub

我正在筹建Stampery。我无法确定在这个API.JS文件中设置字符串API键的位置。文档中说要将STAMPERY_令牌设置为API密钥,但不确定如何执行此操作。任何帮助都将不胜感激

Stampery的链接是

我在Azure网站中添加了以下内容。如果这足够:

在启动服务器之前,您需要设置
STAMPERY\u TOKEN
环境验证


例如,您可以这样做(在Windows中)
set STAMPERY\u TOKEN=your TOKEN&&node app.js

有两种方法可以将其添加到环境中(对于Ubuntu)

  • 添加到bashrc文件。比如:

    导出STAMPERY_TOKEN=“您的令牌”

  • 在运行服务器之前传递这些参数。比如:

    STAMPERY_TOKEN=YOUR-TOKEN node server.js

  • 要访问此变量,您可以通过以下方式获得:

    console.log(process.env[“STAMPERY_令牌])


    你在什么操作系统上运行这个<代码>STAMPERY_标记是一个环境变量。如何设置取决于操作系统。我正在Azure上运行它。不过,本地测试是在windows上进行的。请看一下我添加到编辑问题中的图像,看看这是否足够。应用程序正在Azure上托管。您好@KjTada,在Azure上查看有关应用程序设置的信息这应该足够了,设置此应用程序后它是否工作?
    'use strict';
    
    const express = require('express');
    const router = express.Router();
    const bodyParser = require('body-parser')
    const Stampery = require('stampery');
    
    const development = process.env.NODE_ENV !== 'production';
    const stamperyToken = process.env.STAMPERY_TOKEN;
    
    var proofsDict = {}
    
    if (!stamperyToken) {
      console.error('Environment variable STAMPERY_TOKEN must be set before running!');
      process.exit(-1);
    }
    
    //var stampery = new Stampery(process.env.STAMPERY_TOKEN, development ? 'beta' : false);
    // For now, always use production Stampery API due to not making it work against beta.
    var stampery = new Stampery(process.env.STAMPERY_TOKEN);
    
    router.use(bodyParser.json());
    
    router.post('/stamp', function (req, res) {
      var hash = req.body.hash;
    
      // Throw error 400 if no hash
      if (!hash)
        return res.status(400).send({error: 'No Hash Specified'});
    
      // Transform hash to upper case (Stampery backend preferes them this way)
      hash = hash.toUpperCase()
    
      // Throw error 422 if hash is malformed
      var re = /^[A-F0-9]{64}$/;
      if (!(re.test(hash)))
        return res.status(422).send({error: 'Malformed Hash'});
    
      stampery.stamp(hash, function(err, receipt) {
        if (err)
          res.status(503).send({error: err});
        else
          res.send({result: receipt.id, error: null});
      });
    
    });
    
    router.get('/proofs/:hash', function (req, res) {
      var hash = req.params.hash;
    
      stampery.getByHash(hash, function(err, receipts) {
        if (err)
          res.status(503).send({error: err});
        else
          if (receipts.length > 0)
            res.send({result: receipts[0], error: null});
          else
            res.status(200).send({error: 'Oops! This email has not yet been attested by any blockchain.'});
      });
    
    });
    
    module.exports = router;