#reactjs #paypal #web-deployment #braintree #mern
#reactjs #paypal #веб-развертывание #braintree #mern
Вопрос:
Я реализовал 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:
Они изменили процесс, и я думаю, забыли обновить свою официальную документацию. Вот новый способ инициализации Braintree в nodejs, упомянутый в их репозитории github.
var gateway = new braintree.BraintreeGateway({
environment: braintree.Environment.Sandbox,
merchantId: 'your_merchant_id',
publicKey: 'your_public_key',
privateKey: 'your_private_key'
});
Комментарии:
1. вы действительно спасаете жизнь