自动识别域名的整合配置文件

  三方整合接口配置的时候,最容易出现问题就是各个程序的配置文件的修改了,很多网友都是在这上面出错。比如下面这几句:

Const API_Urls = "博客@@http://Localhost/oblog4/api/API_Response.asp"  

Const DvApi_Urls = http://localhost/cms/API/API_Response.asp

Const strTargetUrls = "http://localhost/cms/API/API_Response.asp"

  整合因为使用了xmlhttp,使得使用相对路径而不使用完整URL不可行了。但是这样一来,也限制了整合的域名。

  随着双线空间、镜像站点的越来越广泛,原来的整合配置已经不能再满足需要。有网友提出这个问题,我当时给了一个方案,就是动态获取用户访问的域名,然后用到整合配置中去。当时没有做测试,也没有深入。

  今天在动易起航教师里,又遇到网友提出这个问题。我也正好想测试和解决一下这个问题,就在本机进行了简单的测试。结果整合成功。下面讲解一下:

  首先,原理就是把原来的配置文件中的接口路径定义由常量定义改为变量,这样支持在变量赋值中使用另外的变量。然后,我们新建一个变量用来存储ServerVariables里读取的Server_Name变量。再把这个变量赋值到接口路径定义中去。也就是下面用红色标记出来的部分:

Const API_Urls = "博客@@http://www.domain.com/oblog4/api/API_Response.asp"  

Const DvApi_Urls = "http://www.domain.com/cms/API/API_Response.asp"

Const strTargetUrls = "http://www.domain.com/cms/API/API_Response.asp"

这部分就是要动态获取的部分。

以动易的为例,原来是

Const API_Urls = ........

改成

Dim API_Urls
API_Urls = ........

我们首先定义一个存储用户访问的域名的变量:

Dim strSiteRoot

然后从ServerVariables集合众获取该变量:

strSiteRoot = Request.ServerVariables("SERVER_NAME")

最后把变量用到接口路径定义中去:

Dim API_Urls
API_Urls = "论坛@@http://" & strSiteRoot & "/bbs/dv_dpo.asp"

其它两个程序的接口配置,也按同样原理做即可。

下面是修改好的三方整合配置文件供参考:

点击下载此文件

About 小李刀刀

网页重构/前端开发人员,目前就职于腾讯科技互联网用户体验设计中心(Tencent ISUX)。
This entry was posted in 所谓技术 and tagged . Bookmark the permalink.

15 Responses to "自动识别域名的整合配置文件"

Leave a reply