本人用 rails 做了一个 web 应用,需要加个论坛,自然地就采用了 discuz!。但是我希望用户在 rails 上登录后,可以直接进入 discuz!。我的 rails 上的用户信息在 discuz! 中也能够看到,总之希望将两者整合在一起,共享用户注册信息。
楼主可以研究一下 Discuz 的 cookies 机制,在 Rails 登录后,写下可以给 Discuz 用的 Cookie,然后用户表与 Discuz 共用。
不一定可行,仅供参考……
discuz 自己是 ucenter 的 一个 app 你可以把你的其他应用都集成到 ucenter 里
不过 rails 搭 php 这纯粹是 找难受嘛
#9 楼 @_samqiu #10 楼 @vincenttone
浏览器安全限制了 cookies 只能在主域名和子域名之间共享,虽然可以通过 iFrame 等方法去开另外一个网站的登陆页面注册并回调,但是直接跨站提交可行么?How?
#14 楼 @xmonkeycn 你说的这个是走 OAuth 流程的,通常有两种方法,一种是网站后台 server 用你的用户名密码去目标网站完成登陆,拿到 token,或者你在前台登陆目标网站,然后通过 callback 把 token 返回给后台存储,但是这两种方式都不是通过 cookie 跨站使用的。
浏览器的安全限制,cookie 本就不能跨站使用,所以我好奇上面诸位推荐共享 cookie,到底你们是怎么做到的?
discuz 适合懂运营不懂技术的,只会 FTP 上传。别小看,这种不懂技术的运营能人很多。如果自己懂技术,想用 discuz 论坛然后自己二次开发定制,跟别的系统结合,那是个深渊。
看官方有没有提供 ucenter 的 client rails 版,没有只能自己搞定,主要是实现通信接口采用相同的加密算法,sso 的登入登出是采用 js p3p 头
用 rails 的开源论坛是最好的选择。有不少的选择。 如果必须用 discuz,有 2 个思路供参考: 1、用 ucenter。没有官方的 rails client,需要自己实现。 参考:http://cnqhoo.iteye.com/blog/406005 http://www.iteye.com/topic/895086 2、使用 rubycas。在 discuz 中做个 cas client. 参考: http://rubycas.github.io/ https://wiki.jasig.org/display/CASC/phpCAS