整合实例ASP实例篇
最后更新时间:2019年01月10日23:02:44
前面我们讲过了易运维系统与PHP系统实现API对接的实例。今天我们来讲一下易运维与ASP系统对接实例。
第一步:
首先在您的ASP系统的根目录下建立一个 global.asa 文件,用来设置授权码的全局变量,以便全局调用,打开该文件,输入以下代码。
<script language="vbscript" runat="server"> Sub Application_onStart Application("sys_key") = "SN201809250924158" '定义一个sys_key的全局变量,用来填写用户下单后获得的授权码 End Sub </script>
为什么要将该文件后缀设为.asa,是因为您可以需要对您的源码进行加密编译,但是这个页面需要开放出来,让用户填写授权码。所以,我们把它设为.asa后缀,加密时可选择不加密asa文件。
第二步:
请求API接口,远程读取易运维系统中的授权信息,并进行相关逻辑处理。
该代码您可以放在需要授权验证的页面,如果您想全站授权,可以做一个公共页来放该代码,然后全站引用。
<script language="JScript" runat="Server"> function toObject(json) { eval("var o=" + json); return o; } </script> <% '定义一个sys_key变量,值为第一步设置的全局变量。' '前面为什么我们要做一个global.asa来放全局变量的目的,就是让全局变量的值在任何一个页面都能读到。' dim sys_key sys_key=Application("sys_key") '读取易运维API接口,这里的请求API接口地址我们以官网演示为例,实际运用请换成您自己的易运维访问网址' GETURL = "http://demo.ew80yun.com/index.php/Api/Auth/index.html?authid="&sys_key Set GetConnection = CreateObject("Microsoft.XMLHTTP") GetConnection.Open "get", GETURL, False GetConnection.Send Auth = GetConnection.responseText Dim json,dqsj json = ""&Auth&"" '根据文件长度判断是否有JSON数据返回' if len(json)<30 then Response.Write "<span style='color:red;'> 请求远程API接口失败或授权码错误 </span>" Response.end end if '将远程API请求过来的数据,转换成JSON数组' Set json = toObject(json) '判断授权域名是否正确' youurl = Request.ServerVariables("HTTP_HOST")'获得当前域名 'API请求到的域名与当前域名不一致,则提示授权域名错误。 if json.url <> youurl then Response.Write " <span style='color:red;'>授权错误,域名不匹配!</span>" Response.end end if '判断授权是否到期' dqsj =json.edate-json.mytime if dqsj<0 then Response.Write " <span style='color:red;'>您的授权已到期,请及时续费,以免影响您的使用!</span>" Response.end end if Set json = Nothing %>
我们只做了授权域名和到期时间的逻辑判断,具体您可以根据API请求返回过来的数据和自己的需求做出更多授权判断。 API请求返回过来的数据参数,我们在前面已经讲过,不记得的朋友可以点这里》》》
第三步:
加密编译发布你的系统。 用户在易运维上下单购买后,将获得的授权码填写到第一步的文件中就可以了。系统会自动远程授权检测。