【问题标题】:Why am I getting PayPal::SDK::Core::Exceptions::MethodNotAllowed?为什么我会收到 PayPal::SDK::Core::Exceptions::MethodNotAllowed?
【发布时间】:2014-05-29 05:16:19
【问题描述】:

尽管遵循implementation guide 的信函,但我仍然遇到以下错误:

PayPal::SDK::Core::Exceptions::MethodNotAllowed in SiteController#execute_payment
Failed. Response code = 405. Response message = Method Not Allowed.

这是违规行:

@payment.execute( :payer_id => params[:PayerID] )

我做错了什么? (这是我的控制器):

class SiteController < ApplicationController
    def index
    end

    def create_payment
        payment = PayPal::SDK::REST::Payment.new({
            :intent => "sale",
            :payer => {
                :payment_method => "paypal" },
                :redirect_urls => {
                :return_url => execute_payment_url,
                :cancel_url => "https://devtools-paypal.com/guide/pay_paypal/ruby?cancel=true" },
                :transactions => [ {
                    :amount => {
                    :total => "12",
                    :currency => "USD" },
                    :description => "creating a payment" } ] } )

        payment.transactions[0].item_list.items[0] = {
                quantity: 1,
                name: 'Poop',
                price: 12,
                currency: 'USD'
            }

        if payment.create
            session[:payment_id] = payment.id
            redirect_to payment.links[1].href
        end
    end

    def execute_payment
        @payment = PayPal::SDK::REST::Payment.new({
            :payment_id => session[:payment_id]})
        @payment.execute( :payer_id => params[:PayerID] )
    end

end 

【问题讨论】:

    标签: ruby-on-rails ruby paypal paypal-rest-sdk


    【解决方案1】:

    您应该使用 find.. 更改而不是创建新付款:

        @payment = PayPal::SDK::REST::Payment.new({
            :payment_id => session[:payment_id]})
    

        @payment = PayPal::SDK::REST::Payment.find(session[:payment_id])
    

    这解决了我的代码副本中的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-21
      • 1970-01-01
      • 2023-04-05
      • 2016-08-21
      • 2014-07-04
      • 2020-06-06
      • 2018-12-26
      • 2021-03-05
      相关资源
      最近更新 更多