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

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
解释负载平衡如何影响会话管理以及如何解决。解释负载平衡如何影响会话管理以及如何解决。Apr 29, 2025 am 12:42 AM

负载均衡会影响会话管理,但可以通过会话复制、会话粘性和集中式会话存储解决。1.会话复制在服务器间复制会话数据。2.会话粘性将用户请求定向到同一服务器。3.集中式会话存储使用独立服务器如Redis存储会话数据,确保数据共享。

说明会话锁定的概念。说明会话锁定的概念。Apr 29, 2025 am 12:39 AM

Sessionlockingisatechniqueusedtoensureauser'ssessionremainsexclusivetooneuseratatime.Itiscrucialforpreventingdatacorruptionandsecuritybreachesinmulti-userapplications.Sessionlockingisimplementedusingserver-sidelockingmechanisms,suchasReentrantLockinJ

有其他PHP会议的选择吗?有其他PHP会议的选择吗?Apr 29, 2025 am 12:36 AM

PHP会话的替代方案包括Cookies、Token-basedAuthentication、Database-basedSessions和Redis/Memcached。1.Cookies通过在客户端存储数据来管理会话,简单但安全性低。2.Token-basedAuthentication使用令牌验证用户,安全性高但需额外逻辑。3.Database-basedSessions将数据存储在数据库中,扩展性好但可能影响性能。4.Redis/Memcached使用分布式缓存提高性能和扩展性,但需额外配

在PHP的上下文中定义'会话劫持”一词。在PHP的上下文中定义'会话劫持”一词。Apr 29, 2025 am 12:33 AM

Sessionhijacking是指攻击者通过获取用户的sessionID来冒充用户。防范方法包括:1)使用HTTPS加密通信;2)验证sessionID的来源;3)使用安全的sessionID生成算法;4)定期更新sessionID。

PHP的完整形式是什么?PHP的完整形式是什么?Apr 28, 2025 pm 04:58 PM

文章讨论了PHP,详细介绍了其完整形式,在We​​b开发中的主要用途,与Python和Java的比较以及对初学者的学习便利性。

PHP如何处理形式数据?PHP如何处理形式数据?Apr 28, 2025 pm 04:57 PM

PHP使用$ \ _ post和$ \ _获取超级全局的php处理数据,并通过验证,消毒和安全数据库交互确保安全性。

PHP和ASP.NET有什么区别?PHP和ASP.NET有什么区别?Apr 28, 2025 pm 04:56 PM

本文比较了PHP和ASP.NET,重点是它们对大规模Web应用程序,性能差异和安全功能的适用性。两者对于大型项目都是可行的,但是PHP是开源和无关的,而ASP.NET,

PHP是对病例敏感的语言吗?PHP是对病例敏感的语言吗?Apr 28, 2025 pm 04:55 PM

PHP的情况敏感性各不相同:功能不敏感,而变量和类是敏感的。最佳实践包括一致的命名和使用对案例不敏感的功能进行比较。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具