gpt4 book ai didi

ruby-on-rails - Paypal-express gem,在开发中工作但不在生产中

转载 作者:太空宇宙 更新时间:2023-11-03 16:27:25 25 4
gpt4 key购买 nike

所以我有一个我无法独自解决的问题。

我已经对我的应用程序进行了一些测试,当在开发环境中启动时它运行良好,但一旦它在生产环境中使用真实标识符,它就不再工作了。

我遇到了这个错误:

Paypal::Exception::APIError(PayPal API 错误:“安全错误”):/offers_controller.rb:218:in choose_step'

  if Rails.env.production?
response = request.setup(
payment_request,
"http://www.workiz.com/recruteurs/paypal_callback/" + params[:app_id],
"http://www.workiz.com/recruteurs/offres",
paypal_options # Optional
)
else # Development ou Test
response = request.setup(
payment_request,
"http://localhost:3000/recruteurs/paypal_callback/" + params[:app_id],
"http://localhost:3000/recruteurs/offres",
paypal_options # Optional
)
end

那是崩溃的行,所以它是我调用 request.setup 的时候

请求是这样创建的:

  if Rails.env.development?
Paypal.sandbox!
Paypal::Express::Request.new(
username: ENV['PAYPAL_SANDBOX_USERNAME'],
password: ENV['PAYPAL_SANDBOX_CLI_ID'],
signature: ENV['PAYPAL_SANDBOX_SECRET']
)
elsif Rails.env.production?

Rails.logger.info "Paypal SETUP PRODUCTION"

Paypal::Express::Request.new(
username: ENV['PAYPAL_USERNAME'],
password: ENV['PAYPAL_CLI_ID'],
signature: ENV['PAYPAL_SECRET']
)
end

是的,记录器“Paypal SETUP PRODUCTION”出现并且值集是来自 ENV 变量的正确值。

我不得不把 Paypal.sandbox!在 config/development.rb 中使其适用于沙箱,但我找不到使其适用于生产的方法...

欢迎任何帮助。非常感谢。

我已经显示了错误,它看起来像这样:

ERROR IS: #<Paypal::Exception::APIError::Response:0x007fa61661e040 
@raw={
:TIMESTAMP=>"2015-05-24T15:01:30Z",
:CORRELATIONID=>"f3067f049ad",
:ACK=>"Failure",
:VERSION=>"88.0",
:BUILD=>"1675131",
:L_ERRORCODE0=>"10002",
:L_SHORTMESSAGE0=>"Security error",
:L_LONGMESSAGE0=>"Security header is not valid",
:L_SEVERITYCODE0=>"Error"},

@ack="Failure", @build="16751317", @correlation_id="f3067f049a", @timestamp="2015-05-24T15:01:30Z", @version="88.0", @order_time=nil, @pending_reason=nil, @payment_status=nil, @payment_type=nil, @reason_code=nil, @transaction_type=nil,
@error_code="10002",
@severity_code="Error",
@long_message="Security header is not valid",
@short_message="Security error"

最佳答案

详细查看您遇到的异常。

根据 https://github.com/nov/paypal-express/blob/master/lib/paypal/exception/api_error.rb该错误应该包含来自 API 响应的更多有用信息。

简单地捕获异常,并打印它的内容:

begin
response = request.setup...
rescue Paypal::Exception::APIError => error
puts error.inspect
raise error
end

您的 PayPal 帐户中可能缺少某些配置。详细的错误消息和错误代码应该为您指明正确的方向。

关于ruby-on-rails - Paypal-express gem,在开发中工作但不在生产中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30419139/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com