我最近几周一直在开发我的第一个RoR/Shopify应用程序,现在它快要完成了。唯一让我困扰的是应用收费问题。当用户在商店中看到我的应用程序时,他会点击“获取”,然后认证过程就开始了。应用程序正在安装,用户可以接受/拒绝收费。如果他拒绝了,他将被重定向到商店中我的应用列表。 现在我的问题是:如果用户拒绝支付费用,我的应用程序仍然被安装。如果他第二次点击我的横幅广告,我需要检查他是否正在为此付款。我通过以下方式进行检查:
if (ShopifyAPI::RecurringApplicationCharge.current)
some logic since the charge is valid
else
redirect_to billing_index_path(:shop_url => cur_shop_url)
我的想法是,如果用户还没有付款,则再次显示收费弹出窗口。但这并不起作用,并且我收到一个错误提示,称因为X-Frame-Options被设置为DENY,我的网站无法显示。我已经尝试在application_controller.rb和application.rb中删除选项,使用以下任一选项:
Response.headers.delete('X-Frame-Options')
并且
config.action_dispatch.default_headers.delete('X-Frame-Options')
分别地,第一次用户安装应用程序时,一切似乎都正常,嵌入、逻辑等。但是,在用户尝试第二次使用后,一切都变得混乱不堪。如何在每次用户访问我的应用程序时嵌入所有站点?我看到Shopify的响应默认带有DENY头,但我相信一定有解决这个问题的方法。我不能让用户每次都卸载应用程序,谢谢。