php教程 php手册 ucenter同步过程,详细解剖(同步登陆)

ucenter同步过程,详细解剖(同步登陆)

Jun 06, 2016 pm 08:09 PM
u 동기식 로그인 상세한 프로세스

今天讲的是?ucenter 同步多站点登陆功能. 同步登陆关键在?uc.php 中, 这个是连通 其他连接站点的关键逻辑层. 当我们执行登陆的时候, 用的是uc 中的?uc_user_login 判断, 接下来是这个?uc_user_synlogin 同步登入, 看文档说明 他会 输出一段 javascript的脚本

今天讲的是?ucenter 同步多站点登陆功能.

同步登陆关键在?uc.php 中, 这个是连通 其他连接站点的关键逻辑层.

当我们执行登陆的时候, 用的是uc 中的?uc_user_login 判断,

QQ图片20130517131736接下来是这个?uc_user_synlogin 同步登入, 看文档说明

QQ图片20130517131924他会 输出一段 javascript的脚本, 其实是 一段URL请求, 目的是通知其他程序, 他登陆了. 在这里其实是 进入了 程序的 uc,php 中处理了.

javascript脚本中内容:?http://192.168.1.20/Discuz/api/uc.php?time=1368767786&code=18e7Mtc5TmbLWuafNA4k%2F1uSOXjqWs3%2BnszeoEDM8Y6vWC3B9epCf1rPRe0jmL4olcCE%2FjCmpmMQ8WyfbMrQdVZhxDcM%2Bvp5V0DMr%2BPljeB3nPgDZNt417uCq2gLQ3aaY94ecqdz6otkPtgwk2NMOoqr2A2MgFeQlFcnOg1D

所以我们在 uc.php写同步登陆过程: 取 ucenter文件夹中的?examples 做解释吧,

QQ图片20130517132454看到?$action == ‘synlogin’ 时候进入这里, ?通过 $get 来获取他 传递过来的 uid, username, password 等数据, 然后修改成. 你的程序 登陆条件. 比如设置cookie, 能判断他已经登陆的条件 就行了.

例子:

	/**
	 * 同步登陆
	 */
	function synlogin($get, $post) {
		$uid = $get['uid'];
		$username = $get['username'];
		if(!API_SYNLOGIN) {
			return API_RETURN_FORBIDDEN;
		}
		header('P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"');
		$ENCODE = _authcode($uid."\t".$username, 'ENCODE');
		_setcookie('Ucenter_auth', $ENCODE);
		//setCookie('Ucenter_auth', $ENCODE);
		//$_COOKIE['Ucenter_auth'] = $ENCODE;
		return API_RETURN_SUCCEED;
	}
로그인 후 복사

我这边是这样写的. 通过 cookie: ?Ucenter_auth 来判断 程序已经登陆.

到这里已经结束了. 如果不懂的.可以留言 与 我进行讨论. 谢谢大家的支持

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

PlayStation 네트워크 로그인에 실패했지만 인터넷 연결에 성공했습니다. PlayStation 네트워크 로그인에 실패했지만 인터넷 연결에 성공했습니다. Feb 19, 2024 pm 11:33 PM

PlayStation 네트워크 로그인에 실패했지만 인터넷 연결에 성공했습니다.

win11에서 헤드폰과 스피커를 동시에 재생하는 문제 해결 win11에서 헤드폰과 스피커를 동시에 재생하는 문제 해결 Jan 06, 2024 am 08:50 AM

win11에서 헤드폰과 스피커를 동시에 재생하는 문제 해결

AADSTS7000112 수정, 애플리케이션이 비활성화됨 Microsoft 계정 로그인 오류 AADSTS7000112 수정, 애플리케이션이 비활성화됨 Microsoft 계정 로그인 오류 Feb 19, 2024 pm 06:27 PM

AADSTS7000112 수정, 애플리케이션이 비활성화됨 Microsoft 계정 로그인 오류

동기화한 폴더에 있는 하나 이상의 항목이 Outlook 오류와 일치하지 않습니다. 동기화한 폴더에 있는 하나 이상의 항목이 Outlook 오류와 일치하지 않습니다. Mar 18, 2024 am 09:46 AM

동기화한 폴더에 있는 하나 이상의 항목이 Outlook 오류와 일치하지 않습니다.

MySql 데이터 마이그레이션 및 동기화: 여러 서버 간에 MySQL 데이터 마이그레이션 및 동기화를 수행하는 방법 MySql 데이터 마이그레이션 및 동기화: 여러 서버 간에 MySQL 데이터 마이그레이션 및 동기화를 수행하는 방법 Jun 15, 2023 pm 07:48 PM

MySql 데이터 마이그레이션 및 동기화: 여러 서버 간에 MySQL 데이터 마이그레이션 및 동기화를 수행하는 방법

GeForce Experience 로그인이 정지됨 [수정] GeForce Experience 로그인이 정지됨 [수정] Mar 19, 2024 pm 06:30 PM

GeForce Experience 로그인이 정지됨 [수정]

Wegame에서 너무 자주 로그인하는 문제를 해결하는 방법은 무엇입니까? Wegame에서 너무 자주 로그인하는 문제를 해결하는 방법은 무엇입니까? Mar 14, 2024 pm 07:40 PM

Wegame에서 너무 자주 로그인하는 문제를 해결하는 방법은 무엇입니까?

win7 시스템에 로그인할 때 기본 사진 배경을 변경하는 방법 win7 시스템에 로그인할 때 기본 사진 배경을 변경하는 방법 Jun 30, 2023 pm 04:03 PM

win7 시스템에 로그인할 때 기본 사진 배경을 변경하는 방법

See all articles