Braintree客户端令牌验证错误

时间:2016-03-30 13:29:52

标签: ruby-on-rails braintree

我正在使用 braintree Drop-in UI with angularjs(frontend)和rails(Backend)。我正在创建一个clientToken并将其发送到braintree设置。

客户端令牌方法

@client_token = Braintree::ClientToken.generate(customer_id: current_user.braintree_customer_id,options: {
            verify_card: true,
            fail_on_duplicate_payment_method: true
            })

所以你可以看到,我已经采取了 fail_on_duplicate_payment_method '选项。并尝试再次添加相同的付款方式。

然后,通过该验证,我在dropin上收到错误&#34;处理您的请求时遇到错误&#34;,但它没有进入错误回调。 < / p>

这是设置,很好,

 braintree.setup(vm.clientToken, 'dropin', {
    container: 'dropin-container',
    onPaymentMethodReceived: function(data) 
    { 
      alert('came recieved')
      // console.log($scope.paymentForm)
      vm.submit($scope.paymentForm, data.nonce)
    },
    onReady: function ()  {
        vm.disablePay = false;
    },
    onError: function(type, message)  {
        alert('came error')
        vm.serverError = message;
    }
});

这是错误的图像,

Error image

网络中的错误是,

callback_jsona7f3c885267b4f49aa13fbf01cecdb60({"error":{"message":"Credit card is invalid"},<br>"fieldErrors":[{"field":"creditCard","fieldErrors":[{"field":"number","code":"81724","message":"Duplicate card exists in the vault"}]}],"status":422})

我想将此错误提取到我的视图中。我搜索了许多链接,但没有得到我需要的答案。任何帮助都很明显 谢谢你提前。

1 个答案:

答案 0 :(得分:0)

完全披露:我是Braintree的开发人员

onError回调仅由客户端错误触发,这实际上是服务器端错误;但是,团队意识到了这一需求,并且正在开发一个将来可用的解决方案。