首页 >后端开发 >php教程 >使用Laravel和Recurly创建一个基于订阅的网站,第2部分

使用Laravel和Recurly创建一个基于订阅的网站,第2部分

William Shakespeare
William Shakespeare原创
2025-02-23 08:30:111015浏览

Creating a Subscription-Based Website with Laravel and Recurly, Part 2

本教程继续使用Laravel和Recurly构建基于订阅的网站。第1部分建立了基本的网站结构,用户角色和注册。此部分将重新集成用于付款处理和订阅管理。

密钥功能:

  • >使用Recurly的PHP客户库库和recurly.js的安全付款处理。 敏感的数据仍然存在于Recurly的服务器上。
  • 创建和管理多个订阅计划(青铜,银,黄金),并具有可定制的定价,设置费和试用期。
  • >
  • >通过Laravel路线和视图的用户注册和付款集成,利用recurly.js进行安全付款表格处理。
  • 基于订阅状态的动态角色分配,由Laravel的会话管理和角色系统管理。
  • >帐户管理功能,包括计费更新,与Recurly的API集成,以获得安全和简化的用户体验。
设置:

  1. recurly.js Integration:

    include(来自recurly.js build build build folder)在您的laravel应用程序的目录中,并将其链接在布局中。 同样,将重复的CSS主题添加到您的recurly.min.js>目录中,并将其链接在您的布局中。public/js/libs public/css/recurly/themes/default

  2. 反复帐户的配置:

    在您的经常帐户中创建订阅计划(青铜,银,金),指出他们的计划代码(“青铜”,“银”,“金”)。启用API访问和recurly.js,记录您的API密钥,私钥和子域。在包含这些凭据和您的默认货币(例如'gbp')中创建一个>配置文件。 recurly.php app/config/recurly.php

  3. >推送通知:
  4. >配置反复推送通知,将通知URL设置为

    >。 your-app-url/recurly

  5. >注册页(
):

此页面显示可用的订阅计划。 考虑从反复的API动态获取计划细节以进行最新定价。 将直接用户链接到计划特定的注册路由(app/views/home/signup.blade.php等)。 提供自定义CSS样式以增强计划显示。

付款处理:

/user/register/bronze

> 修改的注册回调:

>用户注册回调现在将用户帐户重定向到付款页面(
    ),将用户存储在会话中。
  1. 付款路线(/user/register/payment):此路由使用用户的ID和选定的计划生成一个recurly.js签名。它将此签名和其他必要的数据传递给付款视图(user/register.blade.php)。

    >
  2. > 付款视图(app/views/user/register.blade.php):此视图包含一个带有ID“ recurly-subscribe”的a div,其中recurly.js将注入付款表。 JavaScript代码recurly.js初始化,使用服务器端生成的签名构建订阅表格,并指定成功和故障URL。

  3. >

    >确认回调():/user/register/confirm该路线在成功付款后会收到反复的令牌。它使用反复的库获取订阅详细信息,将适当的角色分配给用户并删除待处理的角色。

帐户管理:

>受保护的路由(

)允许登录的用户管理其帐户。计费页面使用recurly.js生成帐单信息更新表格,类似于注册付款过程。 确认回调处理更新。/user/account /user/account/billing

>推送通知(

): /recurly这条路线可重复推动通知。 提供的示例显示了如何处理A,撤销用户的角色。 其他通知类型可以类似地处理。

>

canceled_subscription_notification常见问题(常见问题解答):

> >提供的常见问题解答涵盖与Laravel以订阅管理的重复集成的共同方面,包括处理不同的计划,续订,付款失败,取消,退款,折扣和多租期。 这些答案给出了该过程的全面概述。>

以上是使用Laravel和Recurly创建一个基于订阅的网站,第2部分的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn