discuz怎么对外提供接口,第1张

插件或独立的api都可以,你可以看看api\trade里的文件,最好的例子,这些是支付相关的回调接口

里面的大部分接口不是提供第三方应用调用的。除了JS调用外,其余大多数是腾讯接口

从 Discuz! 400 RC4 版本开始,Discuz! 内嵌了一个独特的 Passport(通行证) 接口,利用此接口,用户将很容易将论坛与其他应用程序整合,而实现统一登录与退出、用户数据共享、积分同步等功能。可以整合的应用程序包括内容管理系统(CMS)、商城系统、游戏系统等等,如您对这方面功能有兴趣或有需求,请继续阅读本文档。

Discuz! Passport 的优点

Discuz! Passport 系统使用了 Discuz! 独有的技术,并不等同于以往使用过的一些方法,与传统的实现方式相比,具备(不限于)以下优势:

基于私有密匙的低相关性可逆加密算法,配合 MD5 校检码技术,使得暴力破解或伪造几乎不可能。

应用程序可与论坛放置于不同的服务器及不同的域名下。可基于不同操作系统、不同程序语言和不同数据库平台,具备真正的平台无关性。

不需要任何形式的数据库连接、或强制把两套应用程序的数据放在同一数据库甚至同一数据表中。论坛与应用程序都有各自的用户数据表,只是在需要时进行无缝同步操作。

对应用程序的代码改动简便易行,可最快速的完成应用程序与论坛间的整合。

Discuz! Passport 的局限

您在开始利用 Discuz! Passport 进行二次开发时,需要了解这个系统的局限性,以对未来的工作进行正确的评估与安排。

只能工作在用户密码不加密、可逆加密或 MD5 加密的情况下,否则论坛后台无法登录。

只能与一种应用程序关联,即二方关联。不能实现三方关联或与更多的应用程序进行关联。

应用程序需具有独立的注册、登录、退出页面和链接,否则需要自行修改论坛中的相应表单或程序。

由于论坛的注册人数可能很多,例如百万级以上,且应用程序和论坛间的用户数据是同步的,因此要求应用程序能够稳定的负载大量用户的访问。

这些不是都通过uc整合的吗?

1、用户注册

$uid = uc_user_register($_POST['username'], $_POST['password'], $_POST['email']);

if($uid <= 0) {

if($uid == -1) {

echo '用户名不合法';

} elseif($uid == -2) {

echo '包含要允许注册的词语';

} elseif($uid == -3) {

echo '用户名已经存在';

} elseif($uid == -4) {

echo 'Email 格式有误';

} elseif($uid == -5) {

echo 'Email 不允许注册';

} elseif($uid == -6) {

echo '该 Email 已经被注册';

} else {

echo '未定义';

}

} else {

echo '注册成功';

}

2、登陆

list($uid, $username, $password, $email) = uc_user_login($_POST['username'], $_POST['password']);

if($uid > 0) {

echo '登录成功';

} elseif($uid == -1) {

echo '用户不存在,或者被删除';

} elseif($uid == -2) {

echo '密码错';

} else {

echo '未定义';

}

3、这个可以修改模板。templates/default/headerhtm

此文件中有id为umenu的div标签,即网页头部导航菜单

4、同样可以修改模板。templates/default/personal_navbarhtm

补充回答:

你真的要好好看ucenter的开发指南了。

5、用户发送信息

uc_pm_send(integer 发送者uid/用户名 , string 接收者uid , string 主题 , string 内容 [, bool instantly , integer 回复信息id , bool 发送者是否根据用户名])

6、具体要看你登录代码。

如选择cookies记录信息。:

list($uid, $username, $password, $email) = uc_user_login($_POST['username'], $_POST['password']);

if($uid > 0) {

setcookie('username', $username, 24 3600);//保留1天

setcookie('password', $password, 24 3600);

echo '登录成功';

} elseif($uid == -1) {

echo '用户不存在,或者被删除';

} elseif($uid == -2) {

echo '密码错';

} else {

echo '未定义';

}

登录代码如果你是这样写的话,那么就可以通过判断$_COOKIE['username'],$_COOKIE['password']是否已定义来判断用户登录。

新增,填标签 显示顺序 图标文件 / 描述 保存

点详情,替换内容就是预置代码,参数个数就是填写框由几个,最多可3个。

参数的数据调用标签是{1}{2}{3}这种形式,

比如

一个参数:

<div class="note note-danger">{1}</div>

两个参数:

<div class="note note-danger">{1}<span>{2}</span></div>

三个参数:

<div class="note note-danger">{1}<span>{2}</span><strong>{3}</strong></div>

嵌套次数,就是在预置代码之内再用此预置代码次数。

保存之后,前台编辑器里就多出来个按钮,点击就弹出几个表单框,你后台设置了几个参数,这就显示几个框。

填写完提交,就看到预置代码加填写的内容了。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » discuz怎么对外提供接口

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情