【发布时间】:2012-02-10 02:58:47
【问题描述】:
我在 Rails 3.1 中使用 paypal_adaptive gem 进行链式支付。然而,在观看http://railscasts.com/episodes/143-paypal-security 之后,我开始担心我可能应该在我的付款请求中添加安全措施。具体来说,我不希望有人能够操纵我在请求中发送的商品的价格。当然,我使用的是标准的 paypal_adaptive gem 请求:
pay_request = PaypalAdaptive::Request.new
data = {
"returnUrl" => "http://testserver.com/payments/completed_payment_request",
"requestEnvelope" => {"errorLanguage" => "en_US"},
"currencyCode"=>"USD",
"receiverList"=>{"receiver"=>[{"email"=>"testpp_1261697850_per@nextsprocket.com", "amount"=>"10.00"}]},
"cancelUrl"=>"http://testserver.com/payments/canceled_payment_request",
"actionType"=>"PAY",
"ipnNotificationUrl"=>"http://testserver.com/payments/ipn_notification"
}
pay_response = pay_request.pay(data)
if pay_response.success?
redirect_to pay_response.approve_paypal_payment_url
else
puts pay_response.errors.first['message']
redirect_to failed_payment_url
end
我的问题是:我是否需要加密此请求以防止人们像 Ryan 在他的 rails cast 中那样更改价格?如果是这样,我该如何操作这段代码呢?
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 paypal paypal-adaptive-payments