discuz 单点登录 ucenter

简介:   下载demo : http://download.csdn.net/download/knight_black_bob/9863051   1、从“discuz-ucenter-api-for-java”的开源项目网站中下载相关的API文件,也可以从这里下载:JAVA_UCenter.

 

下载demo : http://download.csdn.net/download/knight_black_bob/9863051

 

1、从“discuz-ucenter-api-for-java”的开源项目网站中下载相关的API文件,也可以从这里下载:JAVA_UCenter.zip

 

2、将JAVA_UCenter.zip解压、覆盖到你的JAVA项目中,其中的新文件有:

 

src/config.properties:本地的JAVA项目与UCenter的接口配置文件(需要根据实际环境进行配置)

 

src/api/ucenter/Base64.java

 

src/api/ucenter/Client.java:将常用的UCenter操作封装成的客户端对象,我们在项目中主要用它来与UCenter打交道

 

src/api/ucenter/PHPFunctions.java

 

src/api/ucenter/UC.java:本地的JAVA项目用来接收UCenter同步命令的Servlet接口,其访问地址必须为:/api/uc.php

 

src/api/ucenter/XMLHelper.java

 

WebRoot/WEB-INF/web.xml:主要就是将src/api/ucenter/UC.java定义为Servlet

 

 

 

注意:

 

(1) src/config.properties中的代码如下:

 

# ================================================

# Ucenter API for JAVA

# ================================================

UC_API = http://localhost:9201

UC_IP = 

UC_KEY = 123456

UC_APPID = 2

UC_CONNECT = 

 

其中,UC_API表示UCenter的访问地址,UC_KEY就是在UCenter中添加新应用时定义的通信密钥,UC_APPID表示新应用的APPID,就是刚才记下的那个。

 

除这三项外,其他的配置保持为空即可。

 

 

主要操作:

1.设置免激活



 

 

2.创建 应用



 

 

 

3. 测试代码

<%@page import="java.util.LinkedList"%>
<%@page import="api.ucenter.XMLHelper"%>
<%@page import="api.ucenter.Client"%>
<%
Client uc = new Client();
String result = uc.uc_user_login("admin", "12345678");

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("login success");
		out.println($username);
		out.println($password);
		out.println($email);
		
		String $ucsynlogin = uc.uc_user_synlogin($uid);
		out.println("login success"+$ucsynlogin);

		//本地登陆代码
		//TODO ... ....
	
	} else if($uid == -1) {
		out.println("user not exist");
	} else if($uid == -2) {
		out.println("passwd error");
	} else {
		out.println("no defined");
	}
}else{
	out.println("Login failed");
	System.out.println(result);
}

String result2 = uc.uc_user_register("13283214915","123456","13283214915@163.com");
out.println("regester :"+result2);

  

4.结果



 



 

 

 注册后用户登录验证

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

捐助开发者 

在兴趣的驱动下,写一个免费的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(支持支付宝和微信 以及扣扣群),没钱捧个人场,谢谢各位。

 

个人主页http://knight-black-bob.iteye.com/



 
 
 谢谢您的赞助,我会做的更好!

 

目录
相关文章
|
5月前
|
数据可视化 UED
WordPress和phpcms
【4月更文挑战第24天】WordPress
40 2
|
PHP 数据库 数据安全/隐私保护
phpcms服务器搭建之 phpcms的安装
phpcms服务器搭建之 phpcms的安装
120 0
|
10月前
|
SQL PHP 数据安全/隐私保护
thinkphp5 Auth 权限管理(1)
<?php // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK IT ] // +---------------------------------------------------------------------- // | Copyright (c) 2011 http://thinkphp.cn All rights reserved. // +-----------------------
46 0
thinkphp5 Auth 权限管理(1)
|
10月前
|
小程序 中间件 PHP
thinkphp5 Auth 权限管理(2)
这些代码按照正确的方式,放到你的项目中,auth权限管理应该就好用了。如果你的项目支持中间件,上边这部分代码直接放到中间件中就可以了。 我就是这样。
46 0
|
Apache
phpcms之 解决无法远程访问服务器端的phpcms问题
phpcms之 解决无法远程访问服务器端的phpcms问题
|
PHP 数据库 数据安全/隐私保护
Laravel7使用Auth进行用户认证
Laravel7使用Auth进行用户认证
169 0
Laravel7使用Auth进行用户认证
|
安全 PHP
【laravel】@20 安全系列-Auth登录认证
【laravel】@20 安全系列-Auth登录认证
102 0
|
PHP 存储 JavaScript
SSO 单点登录总结(PHP)
本篇文章根据个人理解的知识整理汇总,包含 Cookie、Session 的基础知识和单点登录的方法,如有不足之处,请大家多多指正。
3431 0
|
API PHP 数据安全/隐私保护