#javascript #node.js #reactjs #braintree #braintree-sandbox
Вопрос:
Я создаю приложение reactjs, которое, среди прочего, будет включать интеграцию пользовательского интерфейса Braintree Dropin. До сих пор мне удавалось заставить пользовательский интерфейс отображаться и отправлять полезную нагрузку на серверную часть. Однако я не могу заставить работать часть gateway.transaction.sale (). Вот соответствующие части моего кода:
Когда пользователь нажимает кнопку «Оплатить», это срабатывает:
instance.requestPaymentMethod().then(function (payload) {
console.log(payload);
completePayment(amount, payload.nonce, userId, sessionId).then((result) => {
console.log( result );
});
}).catch(function (err) {
alert(err.message);
});
И это код, который должен обрабатывать транзакцию:
return gateway.transaction.sale({
amount: amount,
paymentMethodNonce: nonce,
customFields: {
session_id: sessionId,
user_id: userId
},
options: {
submitForSettlement: true
}
}).then(function (result) {
if (result.success) {
console.log('Transaction ID: ' result.transaction.id);
} else {
console.error(result.message);
}
}).catch(( error ) => {
alert(error);
});
Каждый раз, когда эта функция запускается, я получаю эту ошибку от catch:
Ошибка типа: не удается присвоить свойству «успех» значение :не объект
Может ли кто-нибудь указать мне правильное направление?
Пожалуйста, обратите внимание, что я не очень хорошо знаком с react, node и т. Д., Поэтому мой код может быть не самым лучшим…