哪位大侠可以分享下自己用自己网站整合UC的经验啊!?不胜感激

解决方案 »

  1.   

    难度……
    为什么不用supesite+uch+uc+dz?
      

  2.   

    详解ucenter原理及第三方应用程序整合思路、方法[转]
    详解ucenter原理及第三方应用程序整合思路、方法
    整合了 ucenter就等于整合了整个php界的所有php程序。一、功用:
    不对,何止整合了整个php界的所有php程序,而是整合了 ucenter就等于整合了所有的asp/asp.net/php/jsp等其它语言的所有web应用程序。(因为ucenter client的api开发包,dz会推出其它语言版)而且所有整合的程序同步登录,同步退出,同步修改密码。最终用户可以通过它轻松通行在各个应用之中,无需重复登录、注册、退出一个id可以出入一个站内的所有程序,如cms和bbs,也可以一个id出入 www.a.com和[url=http://www.b.com及 www.c.com/]www.b.com及www.c.com [/url]a.com的用户可以和b.com的用户互发短消息pm,a.com的用户可以和b.com的用户加好友。而且可以实现站内信(pm)和其它任意站的任意程序的站内信(pm)互通。可以实现www.a.com与 [url=http://www.b.com及www.c.com/]www.b.com及 www.c.com[/url]共享一个用户库, www.a.com的用户可以给www.b.com的用户pm短信.用户组与discuz不对应的问题也得到解决。因为一般应用程序的用户组是单独的一个应用,和discuz再没有关系,而是和ucenter有关系,而ucenter没有用户组的概念。
    二、整合方法:
    如果单说整合用户的话,整合时应用程序的改动也非常小,原数据库不用动,原写cookies的代码不用动,原写数据库session的代码不用动,原来的程序不用怎么动,只需改动以下4个文件:longin.php   register.php   logout.php   修改密码文件.php   (忘记密码.php不用动,用原来的就可以)4个文件中加上和ucenter api通信的语句和逻辑结构。另需要针对ucenter新增加一个文件uc.php,这个文件就是应用程序接收ucenter传来的指令并执行的文件。而且他利用p3p技术实现反向登录a.com或是同时反向登录a.com/b.com/c.com的dedecms或是phpcms或是任意所有程序。
    共计改4个文件,增一个文件。
    如果要是整合站内信pm,好友,头像等功能,思路与方法和整合用户类同。另外有一点,在不同的系统之间注册的用户,在第一次登录这个从来没有登录过的系统时,会让激活。借用这个激活,可以让用户完善在本应用程序中的资料,如企业注册资料。资料不完善,不可以激活。如在bbs注册一个用户test,第一次来到b2b的程序中,这时,并不会自动登录,而是要求用户激活,而test在bbs注册时填的字段与b2b中要求的不同。这时让用户完善资料。第二次来就会自动登录。
    三、 uc原理:以用户登录为例介绍,其它注销,改密码,消息,头像,好友均类同。1.
    从用户xxx在某一应用程序的login.php,输入用户名,密码讲起。
    先用uc_user_login函数到uc server验证此用户和密码,如正确,则写入session,写入cookies,并更新应用程序会员表中的登录ip,登录时间。用户感觉不到这个过程。
    2.
    然后通过uc_user_synlogin通知uc server 用户xxx登录成功,这个过程可能使用ajax,用户感觉不到通知过程。
    3.
    uc server收到这个消息后,马上命令手下,把xxx登录的消息,像令牌环一样,发给所有愿意接收(后台中那个是否开启同步登录)这个消息的其它应用程序。其实就是带参数访问一下各应用程序的uc.php,用户感觉不到这个过程。
    4.
    各应用程序靠api下的uc.php来接收uc server发来的消息,并对uc server言听计从,让干什么就干什么。现在,收到让xxx用户在你的程序中登录的命令,马上执行。
    并写本应用程序的session,并且使用p3p, 写入相同域或不同域的cookies.   用户感觉不到这个过程。
    5.最后所有和uc整合的程序,xxx均登录成功。用户从 www.test.com/bbs登录后,跳到www.test.com/news 同样显示登录。因为bbs 和news系统在后台均已登录。6.应用程序与uc server的会话结束。
    得益于uc设计的精巧过程,整个过程,用户完全感觉不到ucenter的存在.这是整合程序历史上的创新。[转自:http://hi.baidu.com/55842223/blog/item/3a4bf539ea11e7f53a87ced4.html]
      

  3.   

    上面的都是常识
    关键问题
    1,用户数据倒入ucenter ; uchome自动识别2,不同语言之间传达信息的加密解密,对于cookie大网站的付费我可以整合
      

  4.   

    除了调试起来比较麻烦,其他没什么难度
    要注意的几点就是uc的那几个函数(加密解密,addslashes等),还有那几个常量
      

  5.   

    明白那个authcode的原理就可以了, 就一个RC4加密
    其他都只是一般操作
      

  6.   


    加密 解密 p3p  http://www.momolin.cn/archives/9最好把 uc 给看一下  里面的 session 机制  结合的 cookie 使用
      

  7.   

    通过P3P协议,实现跨域set cookie    (转) http://www.momolin.cn/archives/9 
    在之前的项目中,遇到这个一个问题,实现跨域跨服务器间进行通信.虽然在之前简老师有和我说过通行证的原理,因为没有进行过实际的操作,也没有太大的把握可以通过通行证的方式实现这个需求.上网找了一下资料,发现有P3P的这个协议,它的定义是:P3P是万维网联盟(W3C)公布的一项隐私保护推荐标准,旨在为网上冲浪的Internet用户提供隐私保护。现在有越来越多的网站在消费者访问时,都会收集一些用户信息。制定P3P标准的出发点就是为了减轻消费者因网站收集个人信息所引发的对于隐私权可能受到侵犯的忧虑。P3P标准的构想是:Web 站点的隐私策略应该告之访问者该站点所收集的信息类型、信息将提供给哪些人、信息将被保留多少时间及其使用信息的方式,如站点应做诸如 “本网站将监测您所访问的页面以提高站点的使用率”或“本网站将尽可能为您提供更合适的广告”等申明。访问支持P3P网站的用户有权查看站点隐私报告,然后决定是否接受cookie或是否使用该网站。最后我决定用跨域设置cookie实现这一需求.首先我们假设有A站(www.aaa.com)和B站(www.bbb.com),两个站点在不同服务器且不同域下,我们在A站下新建一个setcookie.php文件,代码如下:<?php            header(’P3P: CP=”CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR”‘);             $cookie_name=$_GET['name'];             $cookie_value=$_GET['value'];             setcookie($cookie_name, $cookie_value,time()+3600);?>接下来我们在B站下新建一个文件叫b_setcookie.php的文件,代码如下:<?php             <script src=”http://www.aaa.com/setcookie.php?name=test&value=bbb.com”></script>?>好,现在我们在A站下再新建一个文件叫getcookie.php的文件,代码如下:<?php    echo ‘<pre>’;    print_r($_COOKIE);?>现在我们先在浏览器访问B站的b_setcookie.php文件,然后再访问A站的getcookie.php文件,看是否会打印相应的cookie值出来.完了,代码没有经过测试,只是凭我自己的记忆,希望不会怱悠到大家啦,呵呵!如果有错,欢迎指出,谢谢!
      

  8.   

    我整合过,和flea框架做的网站整和的.每一步的记录都在我博客里,希望对你有帮助:
    http://wweihai.blog.sohu.com/131497123.html
      

  9.   

    学习了不了解,js跨域设置cookie的限制
    理论上,js里的请求也是请求,而且是通过浏览器请求的,理论上,a网站请求b网的setcookie.php设置b网主域的cookie,应是可以的!如果有限制,可能浏览器的限制
      

  10.   

    UC BBS同步登陆退出我做过,他们有各自不同的加密方式。
      

  11.   

    我的整合了,www.cndorm.com/主机名(bbs  home 同意接口,同步登陆)
      

  12.   

    哦,就是一个passport 但是并不是所有的浏览器都兼容- -
      

  13.   

    php的相互整合不用p3p,直接用ucenter的开发文档照着用就是了,用passport+ucenter整合才需要p3p,不过也非常简单的,用passport+ucenter能整合所有平台,不存在浏览器兼容问题
    如果你只要同步登陆登出,真的非常容易