我想为Chrome创建SaaS扩展。为基于客户端的应用程序实施Saas订阅要求
如何确保他们的订阅不再是最新版本时不能使用我的扩展功能?
我的基本想法是,只要他们想使用我的Chrome扩展的功能,扩展会向我的服务器发出ajax请求,以检查当前日期是否在我的数据库中的订阅结束日期之前。
该扩展显然是基于客户端的,所以即使我的客户端只有在我的ajax请求返回它们有当前订阅的情况下才会执行代码,那么无法让一个有进取心的人只看我的代码并运行它通过控制台以超过我的ajax请求要求的方式?
有没有办法强制订阅?
编辑:
这主要是一个概念上的问题,但我会尽力再清楚不过了。
我的应用程序需要的所有javascript代码都在他们的本地机器上,在它们的源文件中(以便它不需要访问我的数据库)。
,所以你可以对本机认为我的代码看起来像这样:
if (usersSubscriptionIsCurrent) {
runFeature()
}
如果Ajax请求到我的服务器返回他们的订阅是当前usersSubscriptionIsCurrent是真实的。
只要查看源代码,然后在其控制台中输入runFeature()
,某人仍然可以运行我的功能。
我想阻止这种情况。
我的扩展依赖于将扩展名的数据发送到相关的chrome应用程序,所以我只想到我也可以将数据发送到我的服务器,然后可以将数据转发到用户的Chrome应用程序,如果他们有目前的订阅。但是,
我越想越想越少,我认为可以预防,但我想我会问,如果有人有一个聪明的想法。
你能附上一些关于这个问题的相关代码吗?编辑 – gui47 2015-01-15 22:23:12
,希望更清楚 – markain 2015-01-16 18:11:36
您的扩展需要付费吗?以下是对您的问题的参考。您可以在用户模型上追踪“subscription_active”布尔或类似内容。当用户登录时,您可以检查API以查看用户订阅的状态。要看:http://stackoverflow.com/questions/18085777/what-is-the-best-way-to-prevent-user-from-using-saas-app-after-failed-payment – gui47 2015-01-16 22:35:16