将有效负载随机数提交到服务器 Braintree SDK PayPal Ruby rails



Im uisng Braintree PayPal SDK在带有托管字段的表单中呈现PayPal按钮。 但是,我不知道如何将随机数提交到服务器。 在本节中我该怎么做?.

onAuthorize: function (data, actions) {
        return paypalCheckoutInstance.tokenizePayment(data)
          .then(function (payload) {
            // Submit `payload.nonce` to your server
        //console.log (payload.nonce)  
  });
},

我的控制器操作是

def payment
  Cart.find(session[:cart_id])
  result = Braintree::Transaction.sale(
            amount: current_order.subtotal,
            payment_method_nonce: params[:payment_method_nonce], 
            :options => {
              :submit_for_settlement => true},
          )
  response = {:success => result.success?}          
  if result.success?
    response[:transaction_id] = result.transaction.id
    current_order.update(status: "purchased")
    ReceiptMailer.purchase_order(current_passenger, 
      current_order).deliver_now 
  redirect_to root_path, 
    notice: "Thank you for booking, Please check your email for invoice"
  session.delete(:cart_id)
  elsif result.transaction
    redirect_to cart_path, alert: "something went wrong, your transactions was not successful!"
  end  
end

您需要在javascript中生成一个请求,以将付款随机数传递到您的服务器。下面是一个使用 jQuery 的 ajax 方法生成请求的简单示例:

$.ajax({
  method: "POST",
  url: "/payment",
  data: { payment_method_nonce: payload.nonce }
})

最新更新