您的位置:首页 > 移动开发 > IOS开发

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

2017-04-02 00:33 417 查看

Discuz API 搭建

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

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


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

目录结构

<appapi>
├connect.php
├image.php
├inc.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
4000


登录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对应的控制器都有说明的,还有不懂得地方,请给我留言。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息