TypeError: braintree.connect 不是一个函数。

8

我已经根据Braintree的文档实现了它,但在终端上遇到了这个错误。 它显示braintree.connect不是一个函数,但在文档中已经提供了硬编码。


var gateway = braintree.connect({
  environment: braintree.Environment.Sandbox,
  merchantId: "useYourMerchantId",
  publicKey: "useYourPublicKey",
  privateKey: "useYourPrivateKey"
});

这是我的代码!

const { response } = require("express");

var gateway = braintree.connect({
  environment: braintree.Environment.Sandbox,
  merchantId: "useYourMerchantId",
  publicKey: "useYourPublicKey",
  privateKey: "useYourPrivateKey"
});

exports.getToken = (req,res) => {
    gateway.clientToken.generate({}, function (err, response) {
        if(err){
            res.status(500).json(err)
        }else{
            res.send(response)
        }
      });
}

exports.processPayment = (req,res) => {
    let nonceFromTheClient = req.body.paymentMethodNonce

    let amountFromTheClient = req.body.amount

    gateway.transaction.sale({
        amount: amountFromTheClient,
        paymentMethodNonce: nonceFromTheClient,
        options: {
          submitForSettlement: true
        }
      }, function (err, result) {
          if (err) {
              res.status(500).json(error)
          }else{
              res.json(result);
          }
      });
}
1个回答

24

他们改变了流程,但我认为忘记更新官方文档了。这里是在他们的 GitHub 存储库上提到的在 Nodejs 中初始化 Braintree 的新方法。

var gateway = new braintree.BraintreeGateway({
  environment: braintree.Environment.Sandbox,
  merchantId: 'your_merchant_id',
  publicKey: 'your_public_key',
  privateKey: 'your_private_key'
}); 

你真是个救命恩人。 - Muhammad Arslan

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