解决整合问题的一个特殊案例

  今天做技术支持的时候,有个客户的整合出现一个很怪异的情况:

  动网、动易、博客三方整合,其它所有的都很成功,唯独一点,就是在动易首页注销的时候就出现服务器无响应。

  我直接访问/User/User_Logout.asp退出没有问题,那就是Ajax部分的问题了,于是我访问/User/User_Logout.asp?action=xml,结果发现返回的xml数据包是空的,没有必要的用户名和密钥等信息。

  检查用户的/User/User_Logout.asp,发现和最新版本的文件一致。再检查用户的/JS/checklogin.js文件,除了显示风格的html代码部分有修改,其它的也和最新版本一致。这就奇怪了。

  我让客户把动易的整合暂时禁用,再测试发现一切正常。肯定是/User/User_Logout.asp文件处理xml请求的部分出错了,但是文件本身没错,难道接口有问题?

  我让他把动易的/API/API_Config.asp发给我,结果发现这个文件是旧版本的,他告诉我是4月22日下载的。换成SP3的文件(该文件是在SP2的时候更新的)后,问题解决。

SP2以前的API/API_Config.asp文件和SP2以后的文件比较如下:

旧文件

Dim arrAPIUrls
arrAPIUrls = Split(API_Urls,"|")

新文件

Dim arrAPIUrls, arrUrlsSP2
arrUrlsSP2 = "blank"
arrAPIUrls = Split(API_Urls,"|")
Dim tempIndex,tempAPIPath
For tempIndex = 0 To UBound(arrAPIUrls)
    tempAPIPath = Split(arrAPIUrls(tempIndex),"@@")
    arrUrlsSP2 = arrUrlsSP2 & "|" & tempAPIPath(1)
Next
arrUrlsSP2 = Replace(arrUrlsSP2,"blank|","")
arrUrlsSP2 = Split(arrUrlsSP2,"|")

结论:用户在每次升级动易系统以后,不需要单独下载额外的整合接口(除非我在官方论坛单独发布补丁并说明什么情况下需要使用),因为动易的最新整合接口会包含在每次发布的新版本中。也就是动易不需要单独的整合接口文件。

               

解决整合问题的一个特殊案例》上有10条评论

  1. 刻度网络

    大哥,我把动网的注册选项作了修改,之后就可以在论坛上同步注册了,但从动网这边还是不能同步登陆和注销,没有什么错误提示,请问大哥这该怎么解决啊?多谢!

  2. 小李刀刀 文章作者

    [quote=刻度网络]大哥,我按照你说的修改了动网conn.asp中的代码,动易这边都正常了,但动网那边不能同时登陆和注销,注册时出现如下错误:
    您在"访问论坛"的时候发生错误,共有1项,下面是错误的详细信息
    您提交的参数错误
    请仔细阅读论坛帮助文件,确保您有相应的操作权限。

    << 返回上一页 麻烦大哥在帮帮忙[/quote] 用管理员身份登陆论坛,设置注册策略。不管要不要使用都要设置一下。

  3. 刻度网络

    大哥,我按照你说的修改了动网conn.asp中的代码,动易这边都正常了,但动网那边不能同时登陆和注销,注册时出现如下错误:
    您在"访问论坛"的时候发生错误,共有1项,下面是错误的详细信息
    您提交的参数错误
    请仔细阅读论坛帮助文件,确保您有相应的操作权限。

    << 返回上一页 麻烦大哥在帮帮忙

  4. 小李刀刀 文章作者

    [quote=刻度网络]大哥,我猜想这次整合不成功可能是因为动易需要的xmlhttp端口被关闭了,因为从动网注册`登陆`注销都没有问题,只有在动易注册会出现错误,所以可能是端口问题,可惜我不懂端口知识,还请大哥指教[/quote]

    这个错误提示是动网论坛运行时错误,不能正常返回xml数据包。还不好说跟整合有没有关系,不管有没有关系,解决这个问题肯定是要从动网下手。因为不是在动易这边出了问题。而是论坛的程序不能继续运行下去。

    你打开你的 bbs/Conn.asp,改一下:

    Const EnabledSession= True

    改成:

    Const EnabledSession= False

  5. 刻度网络

    大哥,我猜想这次整合不成功可能是因为动易需要的xmlhttp端口被关闭了,因为从动网注册`登陆`注销都没有问题,只有在动易注册会出现错误,所以可能是端口问题,可惜我不懂端口知识,还请大哥指教

  6. 刻度网络

    Const API_Enable = true
    Const API_Key = "qingjianshuai"
    Const API_Urls = "论坛@@http://www.kedu.net.cn/bbs/dv_dpo.asp"
    Const API_Timeout = 10000

    '以下请勿修改
    Dim arrAPIUrls, arrUrlsSP2
    arrUrlsSP2 = "blank"
    arrAPIUrls = Split(API_Urls,"|")
    Dim tempIndex,tempAPIPath
    For tempIndex = 0 To UBound(arrAPIUrls)
    tempAPIPath = Split(arrAPIUrls(tempIndex),"@@")
    arrUrlsSP2 = arrUrlsSP2 & "|" & tempAPIPath(1)
    Next
    arrUrlsSP2 = Replace(arrUrlsSP2,"blank|","")
    arrUrlsSP2 = Split(arrUrlsSP2,"|")
    %>

  7. 刻度网络

    我的动易API文件代码如下:
    <% '****************************************************** '文件名: API_Config.asp '描 述: 动易系统DPO远程接口配置文件 '版 本: 动易2006正式版及更高版本适用 'Copyright 2006 PowerEasy Inc. All Rights Reserved. 'Code Writer: EricWu (小李刀刀) '****************************************************** '****************************************************** '通行接口开关:API_Enable = True(启用) 或者 False(禁用) '安 全 密 钥 :API_Key 用户自定义的字符串,整合系统中所 '       有程序的密钥必须一致。 '远程系统配置:每个远程系统均包含两个部分,第一部分是该 '       系统的名称,第二部分为接口文件的URL;名称 '       和URL之间用"@@"分隔,多个远程系统之间用 '       "|"分隔。 '超 时 设 置 :超时时间用于远程请求,这里的超时时间只是 '       一个基数,并非实际等待时间。默认设置为10 '       秒,表示DNS解析和建立连接超时时间10秒、 '       发送和接收数据超时时间为20秒。用户可以根 '       据自己的情况设定。通常在同一服务器可以设 '       置短一些,跨域名跨服务器设置长一些。 '****************************************************** 再请您继续看下条

  8. 刻度网络

    大哥帮忙,我急,我用动易2006SP4(从SP3升级)和动网论坛7.1.0SP1(用过升级包)整合,出现这样问题,两边可以同时登陆,也能同时注销,在动网可以成功注册并在动易同时登陆,但在动易注册发生错误,下面是错误描述:(我的网址是:http://www.kedu.net.cn,bbs.kedu.net.cn,QQ:309467770)
    由于以下的原因不能注册用户!

    Dvbbs0
    Microsoft VBScript 运行时错误 错误 '800a01a8'

    缺少对象: 'UserSession'

    /bbs/inc/Dv_ClsMain.asp,行 95

    【返 回】
    继续看下条评论

  9. 小李刀刀 文章作者

    你的论坛和动易的地址是什么?

  10. 小蝙蝠

    请问大哥,我整和动易2006SP4(是从SP3升级的)和动网7.1.0SP1(也是用过升级包的),但整合后出现不能同时登陆和注销的错误,没有什么提示,但可以同时注册,请问可能的原因是什么?我该如何解决?非常感谢!

评论已关闭。