如何正确处理应用程序中的付费等级以及用户根据等级可以做什么或不能做什么?

问题描述 投票:0回答:1

我需要在我的应用程序中实现付费等级,我将为此使用 Stripe。 我在后端有 SpringBoot 微服务来处理所有应用程序逻辑,包括一些网关和一个微服务来处理用户登录、注册、注销等......

由于我需要使用 Stripe 在我的应用程序中为付费层实现一个新层,所以我正在考虑创建一个新的微服务来管理所有订阅、付款、用户层等...

但疑问是。每次用户发出请求时,我都需要检查用户是否可以根据他选择的层执行操作。在将请求重定向到相应的微服务以执行给定的操作之前,我应该在调用订阅微服务的网关中处理权限和层检查吗?或者每个微服务是否应该调用订阅微服务来检查用户层并基于此允许或不允许某些操作?

java spring-boot architecture stripe-payments microservices
1个回答
0
投票

检查层似乎是授权层的一部分,与检查用户是否已登录相同。

我不知道您喜欢多小的微服务,但您可以:

  • 在网关中创建一个小模块来调用 Stripe API 并检查层,或者
  • 创建一个微服务,充当 Stripe(或将来的另一个/多个支付处理器)的适配器,您的网关将调用该适配器来检查层。如果您有其他原因调用 Stripe API,例如升级订阅等,我会倾向于此选项。
© www.soinside.com 2019 - 2024. All rights reserved.