我即将发布我的应用程序,现在正在尝试解决许可问题。
基本上,我希望能够为客户提供一个选择,要么每月支付费用,要么一次性支付费用。
我真的不在乎花费大量的时间来保护它,这样它就不会被破解,如果有人想要破解应用程序,他们无论如何都会破解的。所以这更多的是给诚实的人看的。
我正在考虑在PHP中有一个后端,在MySQL数据库中存储不同的许可证类型。理论上这对我来说是有意义的,但我不知道如何在实际的c#代码中执行它。
有没有人知道我如何实现一个基本的许可系统,这样我就不需要花费几天的时间了?:)
任何帮助和提示都是非常感谢的!
编辑-澄清以下内容:
我有一个c#应用程序,但它检查存储客户的php后端脚本。
发布于 2012-08-18 02:21:37
在我的脑海中,一个基本的实现如下:
(psudo代码)
包含2个表的MySQL数据库:
TABLE user
id int primary key auto increment
username varchar not null
password varchar not null
TABLE subscription
id int primary key auto increment
type int not null
expires date not nullPHP回调url:https://www.example.com/authenticate.php返回: JSON或XML takes: post数据:用户名:用户密码:通过
PHP代码检查传入的用户名和密码是否正确,如果正确,则检查它们是否具有有效的订阅。返回JSON或XML作为响应:
{status:true}或{status:false}
您可能希望扩展响应以包括订阅类型和过期日期,以便应用程序可以在订阅处于脱机状态且无法与服务器通信时缓存订阅。
您的c#应用程序将需要使用类似于下面的代码(如果您更喜欢,请改用它)
string URL = 'https://www.example.com/authenticate.php";
string myParameters = "username=user&password=pass";
using (var webClient = new System.Net.WebClient()) {
webClient.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";
string HtmlResult = wc.UploadString(URI, myParameters);
// Now parse with JSON.Net
}显然,上面的代码并不是一个功能完整的代码,我为任何语法错误道歉。您可以在初始化步骤中使用该代码,如果应用程序没有有效的订阅(或使用您希望的任何行为),则关闭应用程序并返回错误。
https://stackoverflow.com/questions/12010816
复制相似问题