zoukankan      html  css  js  c++  java
  • 网站整合Discuz!NT论坛,网站用户和论坛用户统一并同步,详解(一)

    最近做一网站,其中需要挂一论坛,且网站用户要和论坛用户一致。

    国内网站挂论坛的,非Discuz莫属,网站是asp.net的,所以论坛就选择了Discuz!NT3.6。

    Discuz!NT下载地址:http://nt.discuz.net/showtopic-140676.aspx

    更多Discuz!NT信息在官网论坛,地址:http://nt.discuz.net/

    更多Discuz!NT整合信息:http://nt.discuz.net/integration/

    更多Discuz!NT的API信息:http://nt.discuz.net/API/

    本文提到的整合是借助官方提供的开发包DiscuzToolkit来实现的,大部分的网站整合论坛都可借助该开发包轻松实现。

    DiscuzToolkit开发包下载地址:http://download.comsenz.com/DiscuzNT/src/DiscuzToolkit.zip

    开发包下载后包含内容如下图所示:

    bubuko.com,布布扣

    可以将三个项目全部包含在你自己的项目中,开发完整后删除WebSample即可。很多操作可以参考WebSample的例子。

    现在整合正式开始:网站和论坛部署好后,进行如下操作:

    一、论坛中

    论坛-》系统设置-》扩展-》通行证设置,

    找到“添加整合程序设置”按钮,填写相应信息,如下图:

    bubuko.com,布布扣

    填写完成后,会生成相应一条记录,如图:

    bubuko.com,布布扣

    到此论坛的api设置已经完成。

    一、网站

    将开发包DiscuzToolkit加入网站后,如图,参考

    bubuko.com,布布扣

    其中上边三个是网站的原有项目,下边三个是开发包中的。

    将WebSampleHelper中的DiscuzSessionHelper.cs文件修改一下,如图:

    bubuko.com,布布扣

    其中apikey对应api key,secret对应api的密钥,url是论坛的地址,如  url = "http://bbs.bubufx.com";

    在网站的web项目中添加DiscuzToolkit和WebSampleHelper的引用。

    实现网站会员登录,同步登录论坛的相应用户,代码如下:

    using Discuz.Toolkit;//顶部增加引用
    
    try
    {
        string cookieDomain = ".bubuko.com";//你的域名
        DiscuzSession ds = WebSampleHelper.DiscuzSessionHelper.GetSession();
        Discuz.Toolkit.User user = null;
        if (user == null || user.UserName != loginnameStr)
        {
            int uid = ds.GetUserID(loginnameStr);
            if (uid > 0)
            {
                ds.Login(uid, loginpassStr, false, 10000, cookieDomain);
            }
        }
    }
    catch { }

     登录完成。

  • 相关阅读:
    如何给swing加上alt+x和ctrl+x快捷键
    java基础之登录程序
    RFID UHF(EPC)标签使用常识
    史密斯圆图
    C# DataTable Operations
    温度测量【RTD】
    温度测量【温度传感器类型】
    C# Debug
    c# ComboBox绑定枚举
    c# 隐藏Tab控件的标签
  • 原文地址:https://www.cnblogs.com/weekzero/p/3043771.html
Copyright © 2011-2022 走看看