Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 重复-令牌无效或过期-如何查找有关错误消息的更多信息_Ruby On Rails_Ruby On Rails 4_Recurly - Fatal编程技术网

Ruby on rails 重复-令牌无效或过期-如何查找有关错误消息的更多信息

Ruby on rails 重复-令牌无效或过期-如何查找有关错误消息的更多信息,ruby-on-rails,ruby-on-rails-4,recurly,Ruby On Rails,Ruby On Rails 4,Recurly,我正在将Rails 4应用程序与Recury集成。我使用recury.js v3获得一个计费令牌,然后通过Ruby Gem获得API的v2 在我将.env文件中的API凭证(RECURLY\u子域,RECURLY\u JS\u私钥,RECURLY\u API\u密钥)更改为另一个用于生产的RECURLY帐户之前,一切都在本地和heroku上运行。现在我从Recurly得到一个错误响应: >>ERROR -- Recurly: <=== 404 Not Found (948.3m

我正在将Rails 4应用程序与Recury集成。我使用recury.js v3获得一个计费令牌,然后通过Ruby Gem获得API的v2

在我将.env文件中的API凭证(
RECURLY\u子域
RECURLY\u JS\u私钥
RECURLY\u API\u密钥
)更改为另一个用于生产的RECURLY帐户之前,一切都在本地和heroku上运行。现在我从Recurly得到一个错误响应:

>>ERROR -- Recurly: <=== 404 Not Found (948.3ms)
>><error>
>>  <symbol>token_invalid</symbol>
>>  <description>Token is either invalid or expired</description>
>></error>
我在我的Desive用户上创建了一个before_create钩子,用于调用Recurly API:

In models/user.rb

before_create :create_subscription

def create_subscription
  #logger.info card_token at this point returns the token received in the js above
  subscription = Recurly::Subscription.create!(
    plan_code: plan,
    account:  {
      account_code: recurly_account_code,
      email:        email,
      first_name:   first_name,
      last_name:    last_name,
      billing_info: {token_id: card_token}
    }
  )
rescue 
  errors.add :base, "Card Error"
  false
end
这就是错误发生的地方。有没有办法找到有关令牌有效性的更多信息?或其他故障排除建议


感谢您的帮助

看来您使用了错误的键来配置recury.js

recurly.configure('<%=Recurly.js.private_key%>') ;
其中,公钥是在API访问页面上找到的公钥:


ref:

谢谢-看来ruby Gem github自述引用了api v2中的JS私钥,这让事情变得很混乱。我看你已经更新了!令人惊叹的!是的,我们很乐意为大家澄清这一点。谢谢你的反馈。
recurly.configure('<%=Recurly.js.private_key%>') ;
recurly.configure('PUBLIC_KEY');