在编写收费服务时,需要引用用户检测服务,该服务中两个方法
CheckUser(s_UserGUID,s_WebServiceGUID)
参数是用户GUID(s_UserGUID)在用户浏览该服务时显示,服务的GUID(s_WebServiceGUID)在作者浏览该服务时显
示,并写入服务程序中。将两个参数传人 CheckUser 方法中,当用户申请了试用或者购买了该服务,按年购买时,
在有效的时间内,或者按次购买购买成功, 审核通过,返回真(true),否则返回假(false)。
任何时候,作者都可以使用自己的用户GUID使用此服务,没有时间和次数限制。
GetError(i_error)
参数是 CheckUser 返回的错误编号,使用GetError可以得到中文含义。
|
0 服务执行成功!
1 用户GUID校验错误!
2 网络服务GUID校验错误!
11 购买的服务已经到期,请重新购买!
12 试用到次数后停止购买!
13 服务的当前价格超过购买设定的价格!
14 帐户金额或积分不足!
15 用户没有使用该服务!
20 服务作者可以免费使用该服务!
21 程序出现非正常错误!
22 按年方式程序出现非正常错误!
23 按次方式程序出现非正常错误!
100 打开数据库连接错误! |
使用例子如下(浏览、下载):
|
得到GUID: |
|
先得到GUID,点击工具栏上的“得到GUID”按钮,首先获得服务的GUID,写入程序,打包上传。
public string HelloWorld(string s_UserGUID,string s_tip)
|
|
|
|
添加引用: |
|
using Example.com.supercss.www
|
|
|
|
添加方法: |
|
//使用该方法首先要得到服务的GUID,写入文件中。
[WebMethod]
public string HelloWorld(string s_UserGUID,string s_tip)
{
//引用 SuperCode 网络服务检测用户
// s_UserGUID:用户GUID 注册用户浏览此服务时得到,s_tip:自定义参数。
int i_Use=0;
//固定服务GUID
const string s_WebServiceGUID="70E955BC6A12497BA656F16ECC5D3A0B";
InToSuperCode InSC=new InToSuperCode ();
//开始检测 检测通过返回 0, 大于0 检测未通过
i_Use=InSC.CheckUser (s_UserGUID,s_WebServiceGUID);
if(i_Use==0)
return s_tip;//执行自定义功能
else
return InSC.GetError(i_Use); //返回错误信息
}
|
|
|
|
使用方法: |
|
//用户GUID 5816C1F28B1B4BD4AF3B076D27DE9110 注册用户在浏览该服务时显示
HelloWorld("5816C1F28B1B4BD4AF3B076D27DE9110","你好,世界!");
|
|
|
|
技巧: |
|
当发布多个服务时,可以先在网络服务管理中加入多个地址为随意字符的服务,这样可以获得
多个GUID,写入文件中,待管理员审核通过服务后,再修改地址为正确连接。
|
|
|