麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > CMS > Discuz > 正文

Discuz論壇與第三方應(yīng)用同步登錄注冊

2024-09-11 09:03:10
字體:
供稿:網(wǎng)友

1.Discuz版本

我安裝的Discuz是目前比較新的3.2版本。安裝完以后UCenter已經(jīng)安裝好了。

2.第三方應(yīng)用站點

自己開發(fā)的簡單的web應(yīng)用平臺系統(tǒng)。

3.UCenter添加應(yīng)用

3.1進入UCenter,http://***:8088/bbs/uc_server,***代表UCenter所在服務(wù)器ip地址或者域名,Apache端口默認的是80,由于需要,我把端口改成了8088(修改方法會在別的博文中敘述)。

3.2登錄成功以后選擇應(yīng)用管理選項,點擊添加應(yīng)用按鈕,自定義安裝。

一般只需要填寫應(yīng)用名稱、應(yīng)用的主 URL、通信秘鑰,然后選擇開啟同步登錄和接收消息為是

3.4提交保存應(yīng)用

4.第三方應(yīng)用的配置

4.1添加配置文件

在主目錄下添加配置文件,名稱為config.properties,內(nèi)容如下:

  1. #uc server url 
  2. UC_API = http://localhost/uc 
  3. #uc ip address 
  4. UC_IP = 
  5. #key通信秘鑰 
  6. UC_KEY = 12345 
  7. #appid,UCenter中第三方應(yīng)用的ID 
  8. UC_APPID = 3 
  9. #connect mode: default value is "" 
  10. UC_CONNECT = 

4.2配置web.xml

在web.xml中添加如下代碼

Discuz論壇與第三方應(yīng)用同步登錄注冊

4.3添加同步登錄所需jar包jar包源碼下載地址

4.4同步登錄代碼示例:

  1. Client e = new Client(); 
  2. String result = e.uc_user_login("username""password");   
  3. LinkedList rs = XMLHelper.uc_unserialize(result); 
  4.  if(rs.size()>0){   
  5.  int $uid = Integer.parseInt(rs.get(0)); 
  6. String $username = rs.get(1); 
  7. String $password = rs.get(2); 
  8. String $email = rs.get(3); 
  9.  if($uid > 0) {   
  10. System.out.println("登錄成功"); 
  11. System.out.println($username); 
  12.  System.out.println($password); 
  13.  System.out.println($email);   
  14. String $ucsynlogin = e.uc_user_synlogin($uid); 
  15. System.out.println("登錄成功"+$ucsynlogin);   
  16. //本地登陸代碼 //TODO ... ....   
  17. else if($uid == -1) {   
  18. System.out.println("用戶不存在,或者被刪除");   
  19. else if($uid == -2) {   
  20. System.out.println("密碼錯");   
  21. else {   
  22. System.out.println("未定義");   
  23. }  //開源軟件:Vevb.com 
  24. }else{   
  25. System.out.println("Login failed"); System.out.println(result);   
  26. }  

4.5同步注冊代碼示例:

  1. String $returns = uc.uc_user_register(user.getUsername(), "***", user.getEmail());   
  2.         int $uid = Integer.parseInt($returns);   
  3.         if ($uid <= 0) {   
  4.             if ($uid == -1) {   
  5.                 System.out.print("用戶名不合法");   
  6.             } else if ($uid == -2) {   
  7.                 System.out.print("包含要允許注冊的詞語");   
  8.             } else if ($uid == -3) {   
  9.                 System.out.print("用戶名已經(jīng)存在");   
  10.             } else if ($uid == -4) {   
  11.                 System.out.print("Email 格式有誤");   
  12.             } else if ($uid == -5) {   
  13.                 System.out.print("Email 不允許注冊");   
  14.             } else if ($uid == -6) {   
  15.                 System.out.print("該 Email 已經(jīng)被注冊");   
  16.             } else {   
  17.                 System.out.print("未定義");   
  18.             }   
  19.         } else {   
  20.             System.out.println("OK:" + $returns);   
  21.         } 

4.6登出代碼示例:

  1. Client uc = new Client();   
  2.        //setcookie('Example_auth', '', -86400);   
  3.        //生成同步退出的代碼   
  4.        String $ucsynlogout = uc.uc_user_synlogout(); 
  5.        System.out.println("退出成功"+$ucsynlogout);   
  6.           
  7.        if ($ucsynlogout != null) {   
  8.            HttpServletResponse res = getResponse();   
  9.            System.out.println($ucsynlogout);   
  10.            res.reset();   
  11.               
  12.            res.setContentType("text/html");   
  13.            res.setCharacterEncoding("utf-8");   
  14.            res.getWriter().write("成功登出" + $ucsynlogout);   
  15.   
  16.            return null;   
  17.        }

基本上Discuz論壇的同步登錄注冊和退出的功能就如上所述,有幾點需要注意.

1,是在同步登錄時返回的結(jié)果$ucsynlogin中,是一串包含兩個script標(biāo)簽的字符串,需要先執(zhí)行一下第一個script標(biāo)簽中的src之后才能同步登錄成功,否則失敗,原因是這段代碼是為了向Discuz論壇里寫入登錄信息,至于以什么樣的方式執(zhí)行需要自己定義,我是直接解析到這段字符串到前臺頁面執(zhí)行。

2,是同步注冊后的用戶并沒有直接添加到用戶表了,而是需要用新注冊的用戶登錄一下論壇進行一下激活才能使用,可以通過修改UCenter的配置來解決這個問題,用管理員登錄論壇進入管理中心選擇站長選項,選擇UCenter設(shè)置是否允許其他應(yīng)用的會員在站點激活:和是否允許直接激活都選擇是,然后提交就行。

3.UCenter提供了域名解析服務(wù),可以添加域名解析,把域名解析成ip地址.

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 二区三区四区 | 国产精品久久久久久久久久久久久久久 | 在线播放的av网站 | 国产一区二区三区精品在线观看 | 久久人 | 久久精品亚洲一区二区 | 激情97| 国产1区2区3区中文字幕 | 久久国产精品99国产 | 欧美亚洲一级 | 美女视频网站黄色 | 国产精品久久久久久久久久电影 | 国产二区三区在线播放 | 久久人人爽人人爽人人片av高清 | 欧美大屁股精品毛片视频 | av大全在线播放 | 看国产毛片 | 亚洲免费在线视频 | 精品一区二区三区网站 | 国内一区 | 久久成人免费网 | 成人在线97| 视频一区二区国产 | 香蕉视频1024 | 狠狠干视频网站 | 精品久久久久久久久久久αⅴ | 欧洲黄色一级视频 | 国产妇女乱码一区二区三区 | 一道本不卡一区 | 亚州精品天堂中文字幕 | 另类亚洲孕妇分娩网址 | 色综合久久久久久久久久久 | 国产一级二级在线播放 | 国产日韩三区 | 亚洲成人国产综合 | 精品国产欧美一区二区 | av在线播放亚洲 | 欧美一级高潮 | 成人精品aaaa网站 | 久精品久久 | 欧美黄色大片免费观看 |