BAD_REQUEST_ERROR - Nodejs 请求方法

BAD_REQUEST_ERROR - Nodejs Request Method

我正在处理支付网关集成,不得不打电话给订单 api。但我一直收到错误

{"error":{"code":"BAD_REQUEST_ERROR","description":"Please provide your api key for authentication purposes."}}

我的整段代码

const functions = require('firebase-functions');
    var express = require('express');
    var cors = require('cors');
    var request = require('request');
    const crypto = require('crypto');
    var app = express();
    app.use(cors({origin:true}));

    app.post("/",(req,res)=>{
      const amount = req.body.amount;

    const key = '----insert your key here----';
    const key_secret = '----- insert key secret here ----';

      var options = { method: 'POST',
        url: 'https://api.razorpay.com/v1/orders',
        headers: 
        {
            Authorization: 'Basic' + new Buffer(key + ":" + key_secret).toString("base64")},     
        form: 
        { amount: amount,
          currency: 'INR',
          receipt: "Receipt #20",
          payment_capture : 1
        } 
        };

      request(options,  (error, response, body)=> {
          if (error) throw new Error(error);
          res.send(body);

        });
    })



    exports.razorpaymentApi = functions.region('asia-east2').https.onRequest(app);

我已将 keykey_secret 替换为我原来的 api 密钥和秘密。你能告诉我哪里错了吗?谢谢

我修改了header为

headers: 
    {
        "authorization" : "Basic xxxxMyEncodedString"
    },

这对我有用。

试试这个

"authorization" = (new Buffer(key + ":" + key_secret, 'base64')).toString('utf8');

我提到了这个 https://www.dotnetcurry.com/nodejs/1231/basic-authentication-using-nodejs