佛山软件定制

asp.net与Discuz-UCenter整合(1):应用通信

1.添加应用
 
 
 
   提交之后会在应用列表中看到我们要通信的"整合测试"
  
2.通信原理
  UCenter对我们添加的应用通信时候请求应用接口文件,接口文件如果发生Http错误或者输出"-1"则通信失败;
  接口文件输出"1"则通信成功!
3.实现通信
  注:UCenter默认应用接口文件位于应用的"/API/"目录下
  添加ucapi.ashx并输出"1"
  实例代码(c#):
 public class UCApi:IHttpHandler
 {
        bool IHttpHandler.IsReusable
        {
            get { throw new NotImplementedException(); }
        }
        void IHttpHandler.ProcessRequest(HttpContext context)
        {
            context.Response.Write("1");
        }
}
  刷新UCenter的应用列表,查看我们的应用已经通信成功!
 
4.应用接口文件
  
    页面:"discuz.axd?link,test",输出"-1"
    1.如果我们将discuz.axd?link,test直接填写到应用接口文件中,很抱歉会提示通信失败!
    2.我们可以为URI加上#.ashx,如图:
   
    实际上访问的还是"discuz.axd?link,test",但却可以通信成功!
 
    利用上面的技巧我们可以无需创建一个单独的测试通信的页面,同时建议使用.axd来代替.ashx
    axd只需要Web.Config添加一个HttpHandler节点!
    无论是访问"/api/discuz.axd?link,test" 或是"/{任意值}.../discuz.axd?link,test"输出的内容都是一样的。

posted on 2010-12-20 15:33  New.min  阅读(951)  评论(3编辑  收藏  举报

导航