discuz

来自于:开发者立即使用

reg login logout profile chpassword avatar viewnotic viewnews delnews walllist addfavorite favorite delfavorite index subforum forumdisplay viewthread ranklist newthread newreply

概述

discuz模块封装了部分discuz论坛的接口,使用本模块,需要先部署discuz论坛。配合服务器端接口模块即可实现移动App的discuz的论坛功能,服务器端模块下载地址:https://pan.baidu.com/s/1cct9ZC ,解压rar中的apicloud目录到你的discuz根目录即可使用,本模块支持discuz X2.5 - X3.2 UTF8编码。   

接口模块使用方法

接口部分采用php编写,ajax提交后,调用discuz内部API返回json数据串,下载接口文件后解压到bbs根目录,结构如下:

image

红色部分即解压后拷入的接口文件。

UI界面组织

本模块不自带UI,需要开发者根据情况自行编写,通过返回的JSON串解析后动态生成UI。 举例说明:

调用index方法后获得JSON串为:

  1. {
  2. "catlist": [{
  3. "fid": "1",
  4. "name": "个人健康",
  5. "forumlist": [{
  6. "fid": "51",
  7. "name": "健康知识",
  8. "description": "",
  9. "threads": "0",
  10. "posts": "0",
  11. "todayposts": "0",
  12. "lastpost": {
  13. "author": "",
  14. "dateline": "",
  15. "subject": "",
  16. "tid": 0
  17. }
  18. }, {
  19. "fid": "53",
  20. "name": "健康小课堂",
  21. "description": "",
  22. "threads": "0",
  23. "posts": "0",
  24. "todayposts": "0",
  25. "lastpost": {
  26. "author": "",
  27. "dateline": "",
  28. "subject": "",
  29. "tid": 0
  30. }
  31. }]
  32. }, {
  33. "fid": "50",
  34. "name": "活动消息",
  35. "forumlist": [{
  36. "fid": "54",
  37. "name": "最新消息",
  38. "description": "",
  39. "threads": "3",
  40. "posts": "3",
  41. "todayposts": "0",
  42. "lastpost": {
  43. "author": "admin",
  44. "dateline": "2016-5-2 16:23",
  45. "subject": "免费体检通知",
  46. "tid": 403
  47. }
  48. }]
  49. }, {
  50. "fid": "42",
  51. "name": "咨询医生",
  52. "forumlist": [{
  53. "fid": "46",
  54. "name": "快捷回复",
  55. "description": "",
  56. "threads": "0",
  57. "posts": "0",
  58. "todayposts": "0",
  59. "lastpost": {
  60. "author": "",
  61. "dateline": "",
  62. "subject": "",
  63. "tid": 0
  64. }
  65. }, {
  66. "fid": "44",
  67. "name": "问答患者",
  68. "description": "",
  69. "threads": "0",
  70. "posts": "0",
  71. "todayposts": "0",
  72. "lastpost": {
  73. "author": "",
  74. "dateline": "",
  75. "subject": "",
  76. "tid": 0
  77. }
  78. }]
  79. }],
  80. "errcode": 0,
  81. "errmsg": ""
  82. }

主板块有3个,分别是个人健康、活动消息、咨询医生,个人健康的子版块有“健康知识”、“健康小课堂”;活动消息的子版块有“最新消息”;咨询医生的子版块有“快捷回复”、“问答患者”,我们要实现的UI样式如下:

image

在index方法的回调中实现如下处理:

  1. var html = '';
  2. for (var i = 0; i < ret.catlist.length; i++) { //读取主板块
  3. var list = ret.catlist[i];
  4. html += '<span>' + list.name + '<span><br/>';
  5. html += '<ul class="aui-list-view">';
  6. for (var k = 0; k < list.forumlist.length; k++) { //读取子版块
  7. var sublist = list.forumlist[k];
  8. html += ' <li class="aui-list-view-cell">';
  9. html += '<div class="aui-arrow-right">' + sublist.name + '</div>';
  10. html += '</li>';
  11. }
  12. html += '</ul>';
  13. }
  14. $api.html($api.byId('list'), html); //把生成的html动态加入容器中

使用此模块之前需先配置config文件的Feature,方法如下:

  1. 名称:discuz
  2. 参数:urlkey
  3. 描述:discuz的访问地址及后端通讯秘钥,都是必要字段。

配置示例:

  1. <feature name="discuz">
  2. <param name="url" value="//community.apicloud.com/bbs" />
  3. <param name="key" value="apicloud" />
  4. </feature>

字段描述:

  1. 1. url:能访问到的你的bbs地址,即你discuz的首页地址。如:http://192.168.13.101/Discuz
  2. 2. key:自定义模块访问秘钥,不需要申请,数字或英文字符组成6位到20位长,如123456

reg

在论坛中注册用户
reg(params,callback(ret));

params

username:

  • 类型: 字符串
  • 描述: 注册用户名.
  • 必须参数: 是

password:

  • 类型: 字符串
  • 描述: 用户密码.
  • 必须参数: 是

email:

  • 类型: 字符串
  • 默认值: 按注册提交时间字符串组成的邮箱,如20160101121118@apicloud.com
  • 描述: 用户邮箱.
  • 必须参数: 否

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. uid:1, //用户uid,很重要,后续授权操作需要
    5. errcode:0,// 错误代码,0为无错误
    6. errmsg:"" //错误描述
    7. }
    8. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.reg({
  3. username: 'test',
  4. password: '123456',
  5. email: '12345@apicloud.com'
  6. }, function(ret) {
  7. if (ret) {
  8. alert(JSON.stringify(ret));
  9. }
  10. });

补充说明

用户注册后即为登录状态,不需要再调用login方法。

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

login

用户登录
login(params,callback(ret));

params
username:

  • 类型:字符串
  • 描述:用户名
  • 必须参数: 是

password:

  • 类型:字符串
  • 描述:用户密码
  • 必须参数: 是

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. uid:1, //用户uid,很重要,后续授权操作需要
    5. errcode:0,// 错误代码,0为无错误
    6. errmsg:"" //描述
    7. }
    8. }

示例代码:

  1. var obj = api.require('discuz');
  2. obj.login({
  3. username: 'test',
  4. password: '123456'
  5. }, function(ret) {
  6. if (ret) {
  7. alert(JSON.stringify(ret));
  8. }
  9. });

补充说明

在android系统中,app中用户登陆后直接关闭程序再次进入app无需登录,登录状态会一直保存在session中,除非执行logout方法才能真正退出登录状态。  

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

logout

退出登录状态
logout(callback(ret));

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. errcode:0,// 错误代码,0为无错误
    5. errmsg:"" //描述
    6. }
    7. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.logout(function(ret) {
  3. if (ret) {
  4. alert(JSON.stringify(ret));
  5. }
  6. });

补充说明
此方法配合login使用,一般在程序退前调用,或者在用户登录前用于清除session。

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

profile

个人资料

profile(params,callback(ret));

params

uid:

  • 类型:字符串
  • 描述:自定义事件的ID,不能为空
  • 必须参数:是

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. profile:{
    5. follower:0, //听众数
    6. regdate:2016-5-20 08:44,//注册时间
    7. friends:0, //好友数
    8. extcredits8:0, //自定义积分字段
    9. extcredits7:0, //自定义积分字段
    10. extcredits6:0, //自定义积分字段
    11. extcredits5:0, //自定义积分字段
    12. extcredits4:0, //自定义积分字段
    13. extcredits3:0, //自定义积分字段
    14. extcredits2:0, //自定义积分字段
    15. extcredits1:0, //自定义积分字段
    16. threads:5, //发布的帖子数
    17. regip:0.0.0.0, //注册时ip
    18. regip_loc:无, //注册地点(注:管理员的注册IP不会显示)
    19. lastip:222.111.222.121, //最后登录ip
    20. lastip_loc:-上海, //最后登录地点
    21. uid:1, //用户id
    22. email:abc@abc.com, //注册email地址
    23. posts:7, //回帖数
    24. following:0, //收听数
    25. lastvisit:2016-5-20 12:12,//最后访问时间
    26. avatar:http://xx.ss.com/...,//头像图片地址
    27. oltime:0, //在线时长,单位:小时
    28. sharings:0, //分享数
    29. onlinestatus:0, //在线状态,0不在线;1在线
    30. username:aop, //用户名
    31. },
    32. errcode:0,// 错误代码,0为无错误
    33. errmsg:"" //描述
    34. }
    35. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.profile({
  3. uid: '1'
  4. }, function(ret) {
  5. if (ret) {
  6. alert(JSON.stringify(ret));
  7. }
  8. });

补充说明

uid可以是登录用户的id,也可以是其他用户的id。

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

chpassword

修改登录用户密码

chpassword(params,callback(ret));

params

oldpss:

  • 类型:字符串
  • 描述:旧密码
  • 必须参数:是

newpass:

  • 类型:字符串
  • 默认值:无
  • 描述:新密码
  • 必须参数:是

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. errcode:0,// 错误代码,0为无错误
    5. errmsg:"" //描述
    6. }
    7. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.chpassword({
  3. oldpass: 'brand', //旧密码
  4. newpass: 'vl' //新密码
  5. }, function(ret) {
  6. if (ret) {
  7. alert(JSON.stringify(ret));
  8. }
  9. });

补充说明

此方法需要在login方法成功后才能使用,如未登录则提示进行登录。

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

avatar

修改已登录用户的头像

avatar(params,callback(ret));

params

path:

  • 类型:字符串
  • 描述:图片的url地址
  • 必须参数:是

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. errcode:0,// 错误代码,0为无错误
    5. errmsg:"头像更新成功" //描述
    6. }
    7. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.avatar({
  3. path: url //jpg图片地址,可以通过api.getpicture获得
  4. }, function(ret) {
  5. if (ret) {
  6. alert(JSON.stringify(ret));
  7. }
  8. });

补充说明

在login成功后使用本方法

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

viewnotic

查看我的提醒

viewnotic(params,callback(ret));

params

isread:

  • 类型:数字
  • 默认值:0
  • 描述:0-未读提醒,1-已读提醒
  • 必须参数:否

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. errcode:0,// 错误代码,0为无错误
    5. errmsg:"", //描述
    6. noticelist:[{
    7. author:admin, //发布者用户名
    8. uid:2, //用户编号
    9. note:你好, //提醒内容
    10. id:4, //提醒编号
    11. authorid:1, //发布者ID
    12. from_id:8, //来源id
    13. from_num:0, //来源号码
    14. type:post, //消息类型,post-帖子,system-系统
    15. from_idtype:notification,// 来源类型
    16. new:0 //是否新提醒,1-是,0-否
    17. },{
    18. ...... //第二条提醒
    19. }
    20. ]
    21. }
    22. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.viewnotic({
  3. isread: 1 //查看已读消息
  4. }, function(ret) {
  5. if (ret) {
  6. alert(JSON.stringify(ret));
  7. }
  8. });

补充说明

需要在login后执行,只能查看登陆用户的提醒。

可用性

iOS系统 Android系统 可提供的1.0.0及更高版本

viewnews

查看已登录用户的消息

viewnews(callback(ret));

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. errcode:0,// 错误代码,0为无错误
    5. errmsg:"" //描述
    6. pmlist:[{
    7. message:你好, //消息内容
    8. subject:hello, //消息标题
    9. uid:2, //发送者id
    10. plid:1, //消息编号
    11. msgtoid:1, //接收者id
    12. tousername:admin //接收者用户名
    13. },{
    14. ...... //第二条消息
    15. }]
    16. }
    17. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.viewnews(function(ret) {
  3. if (ret) {
  4. alert(JSON.stringify(ret));
  5. }
  6. });

补充说明

在login成功后使用本方法

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

delnews

删除1条消息

delnews(params,callback(ret));

params

plid:

  • 类型:数字
  • 描述:消息id
  • 必须参数:是

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. errcode:0,// 错误代码,0为无错误
    5. errmsg:"消息删除成功" //描述
    6. }
    7. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.delnews({
  3. plid: 1 //在viewniews中获得的plid
  4. }, function(ret) {
  5. if (ret) {
  6. alert(JSON.stringify(ret));
  7. }
  8. });

补充说明

在login成功后使用本方法

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

walllist

查看登录用户的留言列表

walllist(callback(ret));

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. errcode:0,// 错误代码,0为无错误
    5. errmsg:,//描述
    6. list:[{ //留言列表
    7. cid:1, //留言编号
    8. uid:2, //用户id
    9. authorid:1, //留言者id
    10. author:admin, //留言者用户名
    11. message:你好 //留言信息
    12. }],
    13. total:1, //留言总数
    14. perpage:20 //每页20条留言
    15. }
    16. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.walllist(function(ret) {
  3. if (ret) {
  4. alert(JSON.stringify(ret));
  5. }
  6. });

补充说明

在login成功后使用本方法

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

addfavorite

收藏帖子

addfavorite(params,callback(ret));

params

tid:

  • 类型:数字
  • 描述:主题id
  • 必须参数:是

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. errcode:0,// 错误代码,0为无错误
    5. errmsg:"收藏成功",//描述
    6. }
    7. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.addfavorite({
  3. tid: 2 //主题的id
  4. }, function(ret) {
  5. if (ret) {
  6. alert(JSON.stringify(ret));
  7. }
  8. });

补充说明

在login成功后使用本方法

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

favorite

查看登录用户的收藏列表

favorite(callback(ret));

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. errcode:0,// 错误代码,0为无错误
    4. errmsg:,//描述
    5. msg:{ //返回的json字符串
    6. favlist:[{ //收藏列表
    7. idtype:tid, //收藏类型帖子
    8. favid:2, //收藏id
    9. uid:2, //收藏者id
    10. id:2, //帖子id
    11. dateline:2016-5-20 12:12, //收藏时间
    12. title:你好, //帖子标题
    13. icon:http://sss.ccc.com/xxx.gif //帖子图标
    14. message:你好 //留言信息
    15. }]
    16. }
    17. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.favorite(function(ret) {
  3. if (ret) {
  4. alert(JSON.stringify(ret));
  5. }
  6. });

补充说明

在login成功后使用本方法

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

delfavorite

删除收藏的帖子

delfavorite(params,callback(ret));

params

favid:

  • 类型:数字
  • 描述:收藏id
  • 必须参数:是

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. errcode:0,// 错误代码,0为无错误
    5. errmsg:"删除成功",//描述
    6. }
    7. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.delfavorite({
  3. favid: 2 //收藏id,可通过favorite获取
  4. }, function(ret) {
  5. if (ret) {
  6. alert(JSON.stringify(ret));
  7. }
  8. });

补充说明

在login成功后使用本方法

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

index

查看板块列表

index(callback(ret));

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. errcode:0,// 错误代码,0为无错误
    4. errmsg:"",//描述
    5. msg:{ //返回的json字符串
    6. catlist:[{ //板块列表
    7. fid:1, //板块id
    8. name:高谈阔论, //板块名称
    9. forumlist:[{ //版块内帖子列表
    10. todayposts:0, //今日发帖数量
    11. threads:10, //版块内帖子数
    12. posts:22, //总回帖数
    13. lastpost:{ //最后回帖
    14. author:sasa, //回复者
    15. subject:hello, //标题
    16. tid:2, //主题id
    17. dateline:昨天 2112 //回帖时间
    18. }
    19. }]
    20. }
    21. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.index(function(ret) {
  3. if (ret) {
  4. alert(JSON.stringify(ret));
  5. }
  6. });

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

subforum

子版块列表

subforum(params,callback(ret));

params

fid:

  • 类型:数字
  • 描述:父板块的id
  • 必须参数:是

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. errcode:0,// 错误代码,0为无错误
    5. errmsg:"删除成功",//描述
    6. sublist:[{ //板块列表
    7. todayposts:0, //今日发帖数量
    8. fid:1, //板块id
    9. posts:16 //回帖数
    10. name:高谈阔论, //板块名称
    11. threads:10, //版块内帖子数
    12. lastpost:{ //最后回帖
    13. author:sasa, //回复者
    14. subject:hello, //标题
    15. tid:2, //主题id
    16. dateline:昨天 2112 //回帖时间
    17. }
    18. }]
    19. }
    20. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.subforum({
  3. fid: 2 //父板块id,可通过index获取
  4. }, function(ret) {
  5. if (ret) {
  6. alert(JSON.stringify(ret));
  7. }
  8. });

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

forumdisplay

一个版块内的主题帖列表

forumdisplay(params,callback(ret));

params

fid:

  • 类型:整数
  • 描述:板块的id
  • 必须参数:是

page:

  • 类型:整数
  • 默认值:1
  • 描述:页数
  • 必须参数:否

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. errcode:0,// 错误代码,0为无错误
    5. errmsg:"删除成功",//描述
    6. threadlist:[{ //板块列表
    7. subject:hello, //帖子标题
    8. fid:1, //板块id
    9. author:sasa, //发帖用户名
    10. authorid:2, //发帖用户id
    11. lastpost:昨天 12:11 //最后回复时间
    12. lastposter:sasa, //最后回复者
    13. avatar:http://www.ss.cc/, //最后回复者头像
    14. dateline:2016-5-11, //发帖日期
    15. replies:0, //回复次数
    16. tid:11, //主题id
    17. status:0, //状态
    18. views:3 //浏览次数
    19. },{
    20. ....... //其他主题帖
    21. }],
    22. total:4, //总主题数
    23. page:1 //当前页码
    24. }
    25. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.forumdisplay({
  3. fid: 2 //板块id,可通过index获取
  4. }, function(ret) {
  5. if (ret) {
  6. alert(JSON.stringify(ret));
  7. }
  8. });

补充说明

一般20条帖子为1页,total/20=总页数,如需翻页请加入page参数

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

viewthread

查看主题帖

viewthread(params,callback(ret));

params

tid:

  • 类型:整数
  • 描述:主题id
  • 必须参数:是

page:

  • 类型:整数
  • 默认值:1
  • 描述:页数,默认10条记录为一页,超过1页的需要输入page参数才能看到第11条记录。
  • 必须参数:否

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. errcode:0,// 错误代码,0为无错误
    5. errmsg:"", //描述
    6. thread:{ //主题概要
    7. subject:hello, //帖子标题
    8. favtimes:0, //收藏数
    9. fid:36, //板块id
    10. author:sasa, //发布者
    11. authorid:2, //发布者id
    12. relay:0, //转发数
    13. replies:8, //回复数
    14. attachment:0, //附件数
    15. sharetimes:0, //分享数
    16. recommend_sub:0, //反对人数
    17. recommend_add:0, //支持人数
    18. tid:8, //主题id
    19. views:8}, //浏览数
    20. perpage:10, //每页数量
    21. total:9, //总回复数
    22. page:1, //当前页码
    23. sticklist:[{ //推荐回复
    24. author:sasa, //回复者
    25. dateline:2016-5-20 12:12 //回复时间
    26. avatar:http://xx.c.com/xxx //头像url
    27. authorid:2, //回复者id
    28. message:你好, //回复帖内容
    29. pid:20, //帖子id
    30. }],
    31. postlist:[{ //帖子列表
    32. first:1, //是否主帖,1-是,0-否
    33. subject:hello, //标题
    34. comments:[], //评论列表
    35. message:你好, //帖子内容
    36. fid:36, //板块id
    37. author:sasa, //发布者
    38. authorid:2, //发布者id
    39. avatar:http://sss.xx.com //头像图片url
    40. dateline:前天 12:11, //发布时间
    41. attachments:[], //附件列表
    42. pid:11, //帖子id
    43. tid:8 //主题id
    44. },{
    45. ...... //更多回帖
    46. }]
    47. }
    48. }
    49. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.viewthread({
  3. tid: 8 //主贴id,可通过forumdisplay获取
  4. }, function(ret) {
  5. if (ret) {
  6. alert(JSON.stringify(ret));
  7. }
  8. });

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

ranklist

帖子排行榜,按条件列出主题记录

ranklist(params,callback(ret));

params

view:

  • 类型:字符串
  • 描述:检索条件,可选值:replies(回复最多)|views(浏览最多)|sharetimes(分享最多)|favtimes(收藏最多)|heats(最热)
  • 必须参数:是

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. errcode:0,// 错误代码,0为无错误
    5. errmsg:"删除成功",//描述
    6. threadlist: [{
    7. tid: 8, //主题id
    8. fid: 36, //版块id
    9. author: sasa, //发布者
    10. authorid: 2, //发布者id
    11. subject: 不会的得到, //标题
    12. dateline: "2016-5-20 15:59", //发布时间
    13. views: 6, //浏览数
    14. replies: 8, //回复数
    15. favtimes: 0, //收藏数
    16. sharetimes: 0, //分享数
    17. heats: 2, //热度
    18. forum: 测试子版1, //板块名称
    19. rank: 1 //排行名次
    20. },{
    21. tid: 1,
    22. fid: 2,
    23. "author": "admin",
    24. "authorid": "1",
    25. "subject": "dsdasdasdsa",
    26. "dateline": "2016-5-20 09:03",
    27. "views": "4",
    28. "replies": "1",
    29. "favtimes": "0",
    30. "sharetimes": "0",
    31. "heats": "1",
    32. "forum": "测试板块1",
    33. "rank": 2
    34. },{
    35. ...... //更多排行
    36. }]
    37. }
    38. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.ranklist({
  3. view: 'views' //排行条件,views-浏览最多的主题
  4. }, function(ret) {
  5. if (ret) {
  6. alert(JSON.stringify(ret));
  7. }
  8. });

可用性

iOS系统,Android系统
可提供的1.0.0及更高版本

newthread

发表新的主题帖

newthread(params,callback(ret));

params

fid:

  • 类型:整数
  • 描述:板块id
  • 必须参数:是

subject:

  • 类型: 字符串
  • 描述:主题帖标题
  • 必须参数:是

message:

  • 类型: 字符串
  • 描述:主题内容,可以是超文本格式
  • 必须参数:是

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. tid:1, //返回的主题id
    5. errcode:0,// 错误代码,0为无错误
    6. errmsg:"主题发布成功" //错误
    7. }
    8. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.newthread({
  3. fid: 2, //发布主题的板块id
  4. subject: '123456', //标题
  5. message: '啊实打实的' //内容
  6. }, function(ret) {
  7. if (ret) {
  8. alert(JSON.stringify(ret));
  9. }
  10. });

补充说明

在login方法后调用。

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

newreply

回复主题帖
newreply(params,callback(ret));

params

tid:

  • 类型:整数
  • 描述:主题id
  • 必须参数:是

message:

  • 类型: 字符串
  • 描述:回复内容,可以是超文本格式
  • 必须参数:是

callback(ret)
ret:

  • 类型:JSON对象
  • 内部字段:

    1. {
    2. status:1,
    3. msg:{ //返回的json字符串
    4. pid:1, //返回的回复贴id
    5. errcode:0,// 错误代码,0为无错误
    6. errmsg:"回复发布成功" //描述
    7. }
    8. }

示例代码

  1. var obj = api.require('discuz');
  2. obj.newreply({
  3. tid: 2, //主题id
  4. message: '啊实打实的' //内容
  5. }, function(ret) {
  6. if (ret) {
  7. alert(JSON.stringify(ret));
  8. }
  9. });

补充说明

在login方法后调用。

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本