浏览 10601 次
精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (1)
|
|
---|---|
作者 | 正文 |
发表时间:2010-08-29
最后修改:2010-08-30
本项目提供完全免费的JAVA版Discuz Ucenter API,可以轻松实现现有JAVA系统与UCenter之间无缝对接。具体实现在的功能如下:
中文名登陆不了的,请将URLEncode.encode(str) 为 URLEncode.encode(str,"GBK")
安装使用简单介绍长期以来,JAVA开发人员一直找不到好的社区系统,而现在广泛使用的PHP论坛又不能同时使用。 本项目提供了JAVA和Discuz! Ucenter的基本API接口, 你可以在此基础上集成你的应用。
第一步:UCenter 添加应用
第二步:客户端配置 UC_API = http://localhost/ucenter UC_IP = 127.0.0.1 UC_KEY = 123456 #对应应用的通信密钥 UC_APPID = 3 #对应应用的ID号 UC_CONNECT = mysql
第三步:启动客户端 将应用接口发布服务器上。启动。 注意:web.xml 中必须含有:
<servlet> <servlet-name>api</servlet-name> <servlet-class>com.fivestars.interfaces.bbs.api.UC</servlet-class> <load-on-startup>2</load-on-startup> </servlet> <servlet-mapping> <servlet-name>api</servlet-name> <url-pattern>/api/uc.php</url-pattern> </servlet-mapping>
第四步: 运行测试程序: http://localhost/context/Jsp_demo.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% /** * JSP 调用示例 */ %> <%@page import="java.util.LinkedList"%> <%@page import="com.fivestars.interfaces.bbs.util.XMLHelper"%> <%@page import="com.fivestars.interfaces.bbs.client.Client"%> <% Client uc = new Client(); String result = uc.uc_user_login("username", "password"); LinkedList<String> rs = XMLHelper.uc_unserialize(result); if(rs.size()>0){ int $uid = Integer.parseInt(rs.get(0)); String $username = rs.get(1); String $password = rs.get(2); String $email = rs.get(3); if($uid > 0) { response.addHeader("P3P"," CP=\"CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR\""); out.println("登录成功"); out.println($username); out.println($password); out.println($email); String $ucsynlogin = uc.uc_user_synlogin($uid); out.println("登录成功"+$ucsynlogin); //本地登陆代码 //TODO ... .... Cookie auth = new Cookie("auth", uc.uc_authcode($password+"\t"+$uid, "ENCODE")); auth.setMaxAge(31536000); //auth.setDomain("localhost"); response.addCookie(auth); Cookie user = new Cookie("uchome_loginuser", $username); response.addCookie(user); } else if($uid == -1) { out.println("用户不存在,或者被删除"); } else if($uid == -2) { out.println("密码错"); } else { out.println("未定义"); } }else{ out.println("Login failed"); System.out.println(result); } %>
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-08-31
项目呢?楼主开源吗?
|
|
返回顶楼 | |
发表时间:2010-08-31
最后修改:2010-08-31
|
|
返回顶楼 | |
发表时间:2010-08-31
用户Email在discuz是必须的,而且是唯一,但是在自己的项目当中该字段可能不是唯一的,我当初在整合的时候就是碰到了这个问题,其他都还不错。
|
|
返回顶楼 | |
发表时间:2010-09-01
这种有很多bug 比较严重的问题就是不可逆
在网站注册和登录还有注销是没有问题的 . 但在论坛注册然后登陆还有注销 就有问题了. |
|
返回顶楼 | |
发表时间:2010-09-01
Dzx1 在整合其他产品的时候 BUG层出不穷
现在在开发dzx2 LZ这个同步,能应用到真实项目中么???? |
|
返回顶楼 | |
发表时间:2010-11-10
Authracation has expiried 出现这个问题,怎么解决啊?LZ
|
|
返回顶楼 | |