佛山软件定制

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

1.添加应用
 
 
 
   提交之后会在应用列表中看到我们要通信的"整合测试"
  
2.通信原理
  UCenter对我们添加的应用通信时候请求应用接口文件,接口文件如果发生Http错误或者输出"-1"则通信失败;
  接口文件输出"1"则通信成功!
3.实现通信
  注:UCenter默认应用接口文件位于应用的"/API/"目录下
  添加ucapi.ashx并输出"1"
  实例代码(c#):
1
2
3
4
5
6
7
8
9
10
11
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   New.min  阅读(960)  评论(3编辑  收藏  举报

编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述

导航

点击右上角即可分享
微信分享提示