Discuz论坛内置提供针对移动端开发的json接口/为什么需要自己的论坛不是saas服务
来源:互联网 发布:行业研究员学历 知乎 编辑:程序博客网 时间:2024/05/04 17:45
Discuz论坛内置提供针对移动端开发的json接口,下面根据源码进行一些分析。
入口 api/mobile/index.php
功能比较简单,指向source/plugins/mobile/mobile.php 或者check.php,check.php只有当类似$_GET['check'] == 'check'的情况下才运行,返回系统基本信息;其他请求均通过mobile.php接管。
mobile.php
mobile.php的基本思想是根据$_GET['module']以及$_GET['version']来调用相关的module文件,$_GET['version']参数可以做到版本兼容。
mobile/api/%version%/%module%.php
实现相当简单,根据需求设置$_GET['mod']等参数,然后将请求转到Discuz网页版页面,完成请求。同时,文件中定义mobile_api类。
mobile_api类
mobile_api类包含两个方法:common与output,common方法对应discuz的runhooks调用;output方法对应discuz的hookscriptoutput调用。
流程
Discuz调用runhooks时,调用mobile_plugin->common(),调用mobile_api->common()
Discuz在模板中调用hookscriptoutput()时,调用mobile_plugin->global_mobile(),调用mobile_api->output()
总结
入口 api/mobile/index.php
功能比较简单,指向source/plugins/mobile/mobile.php 或者check.php,check.php只有当类似$_GET['check'] == 'check'的情况下才运行,返回系统基本信息;其他请求均通过mobile.php接管。
mobile.php
mobile.php的基本思想是根据$_GET['module']以及$_GET['version']来调用相关的module文件,$_GET['version']参数可以做到版本兼容。
mobile/api/%version%/%module%.php
实现相当简单,根据需求设置$_GET['mod']等参数,然后将请求转到Discuz网页版页面,完成请求。同时,文件中定义mobile_api类。
mobile_api类
mobile_api类包含两个方法:common与output,common方法对应discuz的runhooks调用;output方法对应discuz的hookscriptoutput调用。
流程
Discuz调用runhooks时,调用mobile_plugin->common(),调用mobile_api->common()
Discuz在模板中调用hookscriptoutput()时,调用mobile_plugin->global_mobile(),调用mobile_api->output()
总结
Discuz大量使用$_G全局变量来保存系统运行过程中的结果,这为移动端内容输出提供便利,只需要在模板输出前截获$_G变量,然后根据需求从$_G变量中提取所需数据,并使用json格式返回。这就是Discuz移动端接口的基本实现方式。
==== ====
合并环信:http://www.easemob.com/,以及discuz,前者提供了基本的通信模块,后者提供了社区讨论。
最后类似于微信,只不过将“发现”中栏目改为论坛板块,保留朋友圈。
========当我看到这个的时候,其实我想不如直接umeng+easemob,关键是主题,do what?
========云图的交流区,okay!
========惠生活,okay!
========区域社交,okay!
========如何推广,粉丝社群是关键!
1 0
- Discuz论坛内置提供针对移动端开发的json接口/为什么需要自己的论坛不是saas服务
- PHP开发discuz论坛操作需要注意的问题详解
- discuz论坛的安装
- discuz论坛的抓取
- 针对DISCUZ!NT论坛的机器人一些方法
- 遇到的困难:discuz论坛和B2C商城需要整合。
- PHP discuz论坛操作需要注意的问题汇总
- 用Sina App Engine免费搭建自己的Discuz论坛
- discuz论坛的存储过程
- discuz论坛环境的搭建
- 自己也可以开论坛了,免费的Discuz论坛:www.5d6d.com
- 两个方法解决DZ(Discuz ! x3.2 )论坛安装模板不是正版应用的问题
- XP系统下 discuz论坛的安装
- discuz 论坛 消息队列问题的总结!
- 关于和discuz!nt论坛的整合
- Discuz论坛源码的编码自动分析
- Discuz!论坛出现附件问题的解决方案
- ubuntu11.04下Discuz论坛的安装
- 微博上看到的一些东西
- 开坑,每天一个主题阅读
- Android常用权限
- 详解抓取网站,模拟登陆,抓取动态网页的原理和实现(Python,C#等)
- 【编程马拉松】【012-Hero】
- Discuz论坛内置提供针对移动端开发的json接口/为什么需要自己的论坛不是saas服务
- Linux中vi编辑器的使用
- 极客成长手记(2)——搭建自己的博客
- Some Useful Essays
- Django session机制
- UML图详解(四)——对象图
- memory
- stm32f072的spi的设置注意事项。
- JAVA利用Apache Poi写Excel文件