Discuz API&JSON 适用于IOS及Android移动端开发

1 篇文章 0 订阅
1 篇文章 0 订阅

Discuz API 搭建

下载API文件:链接: http://pan.baidu.com/s/1mir1zkc 密码: 4fyj

appapi文件夹放入DZ目录下执行 http://xxxx.com/appapi/install.php

执行浏览器出现 “安装成功” 字样可进行下面的操作

目录结构

<appapi>
├connect.php
├image.phpinc.php
├index.php//首页控制器 index.php?mod=index&XXX
├install.php//安装文件,建议安装完成后删除。
├login.php //登录获取Token,里边也包括登录后用户的信息。
├register.php
├<config>
│  ├config.php
│  ├config_extra.php
│  ├permission_config.php
│  └smiley_map.php
├<lib>
│  ├class_member.php
│  ├json.class.php
│  ├lib_app_helper_attach.php
│  ├lib_appversion.php
│  ├lib_bfd_app.php
│  ├lib_bfd_perm.php
│  └lib_bfd_user.php
├<qqconnect>
│  ├connect.class.php
│  ├index.htm
│  ├qqshow.inc.php
│  ├spacecp.inc.php
│  ├<connect>
│  │  ├connect_check.php
│  │  ├connect_config.php
│  │  ├connect_feed.php
│  │  ├connect_login.php
│  │  ├connect_user.php
│  │  └index.htm
│  ├<table>
│  │  ├index.htm
│  │  ├table_common_connect_guest.php
│  │  ├table_common_member_connect.php
│  │  ├table_connect_disktask.php
│  │  ├table_connect_feedlog.php
│  │  ├table_connect_memberbindlog.php
│  │  ├table_connect_postfeedlog.php
│  │  └table_connect_tthreadlog.php
│  ├<template>
│  │  ├extend_common.css
│  │  ├extend_module.css
│  │  ├index.htm
│  │  ├module.htm
│  │  ├qqshow.htm
│  │  └spacecp.htm
├<source>
│  ├bfd_app_favorite_action.php
│  ├bfd_app_favorite_list.php
│  ├bfd_app_forum_list.php
│  ├bfd_app_forum_misc.php
│  ├bfd_app_group_action.php
│  ├bfd_app_group_all.php
│  ├bfd_app_group_index.php
│  ├bfd_app_group_info.php
│  ├bfd_app_group_my.php
│  ├bfd_app_group_thread.php
│  ├bfd_app_group_thread2.php
│  ├bfd_app_index.php
│  ├bfd_app_index_threads.php
│  ├bfd_app_index2.php
│  ├bfd_app_post_newthread.php
│  ├bfd_app_post_reply.php
│  ├bfd_app_search.php
│  ├bfd_app_send_pm.php
│  ├bfd_app_sign.php
│  ├bfd_app_space_notice.php
│  ├bfd_app_space_pm.php
│  ├bfd_app_space_thread.php
│  ├bfd_app_thread_activity.php
│  ├bfd_app_tip.php
│  ├bfd_app_tip_message.php
│  ├bfd_app_topicadmin.php
│  ├bfd_app_user_action.php
│  ├bfd_app_user_avatar.php
│  ├bfd_app_user_detail.php
│  ├bfd_app_user_follow.php
│  ├bfd_app_user_friend.php
│  ├bfd_app_user_space.php
│  ├bfd_app_userinfo.php
│  ├<include>
│  │  ├thread_activity.php
│  │  ├thread_activity_form.htm
│  │  ├thread_poll.php
│  │  └viewthread_activity.htm
│  ├<search>
│  │  ├index.htm
│  │  ├search_album.php
│  │  ├search_blog.php
│  │  ├search_collection.php
│  │  ├search_forum.php
│  │  ├search_group.php
│  │  ├search_my.php
│  │  ├search_portal.php
│  │  └search_user.php
│  ├<topicadmin>
│  │  ├topicadmin_delpost.php
│  │  └topicadmin_moderate.php
├<template>
│  ├footer.htm
│  ├header.htm
│  ├register.htm
│  ├seccheck.htm
│  ├<style>
│  │  ├common.js
│  │  ├jquery-1.8.3.min.js
│  │  ├style.css
│  │  ├<images>
│  │  │  ├login.png
│  │  │  └login_on.png
├<unit_test>
│  ├test.php
│  ├test_config.php
│  ├test_function.php
│  ├test_inc.php
│  └test_send_pm.php

登录Token获取

我们想要获取用户的详细信息和发帖就要给存储一个Token Cookis Login.php 用户登录
打开Login我们可以看到。

$username = urldecode($_POST['username']);
$password = $_POST['password'];

我们只需要以POST传入这两个变量的值即可进行登录操作,话不多话看我直接贴代码。

<!DOCTYPE html>
<html>
<head>
  <title></title>
</head>
<body>
<span id="msg"></span>
<input type="txt" name="name">
<input type="txt" name="mm">
<button onclick="test();">按钮</button>
</body>
<script src="//cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
<script>
    function test(){
      var mm=$("name").val()
      var name=$("mm").val()
   $.ajax({
            //提交数据的类型 POST GET
            type:"GET",
            //提交的网址
            url:"../dz/appapi/login.php", 
            //提交的数据
            data:{username:name,password:mm},
            //返回数据的格式
            datatype: "json",//"xml", "html", "script", "json", "jsonp", "text".
            //在请求之前调用的函数
            beforeSend:function(){$("#msg").html("logining");},
            //成功返回之后调用的函数             
            success:function(data){
           $("#msg").html(decodeURI(data));            
            }   ,
            //调用执行后调用的函数
            complete: function(XMLHttpRequest, textStatus){
               alert(XMLHttpRequest.responseText);
               alert(textStatus);
                //HideLoading();
            },
            //调用出错执行的函数
            error: function(){
                //请求出错处理
            }         
         });

  }
</script>
</html>

JSON返回值

返回用户基本的头像,用户名,邮箱,以及其他信息,这些输出都可以在源文件里进行修改的。

{"errornum":"E00000","errormsg":"\u7528\u6237\u767b\u5f55\u6210\u529f","data":{"uid":"1","avatar":"http:\/\/127.0.0.1\/dz\/uc_server\/avatar.php?uid=1&size=middle","username":"admin","email":"admin@admin.com","password":"a5ecf2332da38601e6fadd79ee69840f","groupid":"1","extcredits1":"0","extcredits2":"2","follower":"0","following":"0","gender":"\u4fdd\u5bc6","department":"","constellation":"","medals":[],"bloodtype":"","sightml":"","token":"65faMdFDBMcsPpO3zghoLJIAsBLOFRNbOU61rjVZsCYtN8zAlOoW4hbRUno4fufoxtbtwuJX1L+iur97LFjWVnkBow17h\/vAnGk","token_expire":"1493655981"}}

我们最主要是要取到用户唯一Token。

"token":"65faMdFDBMcsPpO3zghoLJIAsBLOFRNbOU61rjVZsCYtN8zAlOoW4hbRUno4fufoxtbtwuJX1L+iur97LFjWVnkBow17h\/vAnGk"

然后我们写入到Cookis 里边儿,就可以进行index.php?mod里的其他操作啦。我们这里只是粗略的说了一下用法,具体的一些API文档的用法LIB对应的控制器都有说明的,还有不懂得地方,请给我留言。

  • 14
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 22
    评论
通过使用该源码,开发者可以迅速地将Discuz论坛迁移到Android客户端中。不需要任何的开发工作即可拥有属于自己论坛的Android客户端  准备工作在使用源码之前必须先在Discuz论坛中安装BigApp插件。  一、插件安装应用中心 -> 插件 -> 搜索bigapp -> 点击BigApp手机客户端 -> 安装应用即可安装步骤参考 Bigapp安装方法  二、配置插件1、登录注册模式(原生登录、web登录、原生注册、web注册、允许客户端更换头像)2、第三方登录开关(QQ登录、微信登录开关)3、签到设置(APP签到设置)4、高级DIY设置如下(APP设计器、样式设置), 如图:注:如下配置将不可用(站长认证、生成App、布局设置、推送设置、统计分析), 如图:   使用说明注:请使用Android Studio开发工具,gralde脚本编译注:本源码中不包含消息推送和版本更新功能。1、使用Android Studio导入项目2、在项目中找到 Clan\Clan\res\values\strings_config.xml文件,并进行配置配置项说明如下:<!-- 是否启用分享功能,1代表启用,其它代表不启用 --> <string name="is_use_share">1</string> <!-- 具体是否启用微信、qq、微博分享,1或use_xx_ok代表使用,其它代表不使用--> <string name="use_wechat">use_wechat_ok</string> <string name="use_qq">use_qq_ok</string> <string name="use_weibo">use_weibo_ok</string> <!-- app 主题风格 1.tab风格,2.侧边栏风格,3.类QQ侧边栏风格,4.抽屉菜单风格, 99.QQ空间风格--> <string name="custom_theme">1</string> <!-- api地址 :您的站点地址   api/mobile/iyz_index.php--> <string name="api_url">http://bbs.bigappdemo.com/api/mobile/iyz_index.php</string> <string name="api_url_base">http://bbs.bigappdemo.com/</string> <string name="api_url_path">api/mobile/iyz_index.php</string>注:对于新浪、微信、QQ的应用信息设置,如果没有使用相关平台功能,可以不进行设置。3、在项目中找到 libs\ShareSDK\assets\ShareSDK.xml文件,设置分享相关的key。本app使用的是sharesdk第三方分享,请拷贝QQ、sina、微信开发者平台的key到此文件中。4、编译运行应用。
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值