问题描述
我已经使用它的文档实现了一个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,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
}
},result) {
if (err) {
res.status(500).json(error)
}else{
res.json(result);
}
});
}
解决方法
他们更改了流程,我认为忘记更新其正式文档。这是在github存储库中提到的在nodejs中初始化Braintree的新方法。
var gateway = new braintree.BraintreeGateway({
environment: braintree.Environment.Sandbox,merchantId: 'your_merchant_id',publicKey: 'your_public_key',privateKey: 'your_private_key'
});