admin 发表于 2018-11-27 08:59:47

第四节:如何调用api接口?


通用接口调用形式解析
接口形式解析:
初始化接口:
http://localhost/plugin.php?id=xinxiu_network:login&key={传输密钥}&action=login_user&username=用户名&password=密码
/*-----*/
接口名称:初始化接口是负责登陆、获取token令牌,而其他功能接口则需要token令牌参数;
传输密钥:插件后台一个传输密钥;
/*-----*/
其他功能接口:
http://localhost/plugin.php?id=xinxiu_network:{模块名称}&token={token令牌}&action={接口方法}&参数1=值&参数2=值……
/*-----*/
模块名称:模块接口类名称,例如:login、user等;
token令牌:是初始化登陆后,返回的唯一token令牌,过期后可以重新初始化登陆获取;
接口方法:每个模块功能下都会有多个接口方法,具体看教程;
参数=值:根据接口方法的参数要求,进行传值,可使用GET或POST方式。
/*-----*/
返回数据:
{"code":状态码,"result":"错误提示信息","count":返回数据数组数,"data":{"返回数据"},"sqltime":"代码执行时间/秒"}
/*-----*/
code:返回状态码,正常为200;
result:返回状态码对应的信息,开发软件调试时查阅接口文档;
count:返回data数组中的数量;
data:返回获得值,具体查看接口文档介绍


完整接口文档--在线手册
http://www.xinxiuvip.com/forum.php?mod=viewthread&tid=313


接口调用实例
用户登录(初始化)
提交地址:(返回json数据)
http://demo.xinxiuvip.com/plugin.php?id=xinxiu_network:login&key=123456&action=login_user&username=demo&password=demo
提交地址:(返回XML数据)接口网址后面增加&output=xml参数
http://demo.xinxiuvip.com/plugin.php?id=xinxiu_network:login&key=123456&action=login_user&username=demo&password=demo&output=xml

提交参数

参数名类型必填说明限制示例
key是传输密钥(后台设置)
123456
action是接口方法
login_user
username是用户名,根据$isuid值对应输入(用户名、用户ID、用户邮箱)
demo
password是密码
demo
questionid否问题id(1-7)提示问题顺序为1=母亲叫什么名字,后面2、3、4、5以此类推


answer否问题答案


isuid否用户名登录类型(1->使用用户ID登录,2->使用用户E-mail登录;0->(默认值) 使用用户名登录)





返回数据(JSON形式)
{
    "code": 200,
    "result": "OK",
    "count": 15,
    "data": {
      "uid": "3",
      "username": "demo",
      "email": "2234@qq.com",
      "credits": "15",
      "jiaoyi": "0",
      "groupid": "0",
      "groupexpiry": 0,
      "adminid": "0",
      "token": "b8a1ab9du_xinxiu_vTwHlAi1K9ZbP3T0kDnvJ6E2YFE_xinxiu_vhvKyDkp2YMl7JtjMr0ViX5Jmobdg",
      "sgin": "18E100B850FBFEEAEC06D292D4A67CAA",
      "dateline": "2020-03-08 00:14:46",
      "phone": "",
      "qq": "",
      "weixin": "",
      "status": "0"
    },
    "sqltime": "0.06564s"
}

返回数据(XML形式)接口网址后面增加&output=xml参数
<?xml version='1.0' encoding='UTF-8' ?>
<root><code>200</code>
    <result>OK</result>
    <count>15</count>
    <data>
      <uid>3</uid>
      <username>demo</username>
      <email>2234@qq.com</email>
      <credits>15</credits>
      <jiaoyi>0</jiaoyi>
      <groupid>0</groupid>
      <groupexpiry>0</groupexpiry>
      <adminid>0</adminid>
      <token>837e6ZB6zYCy0SsCVqVJ_xin_xiu_wuEh_xinxiu_zhDX6Wgqh_xinxiu_nIIzl5zOdxN7ID9vSTlyk8x6pgO0S2s</token>
      <sgin>18E100B850FBFEEAEC06D292D4A67CAA</sgin>
      <dateline>2020-03-08 00:14:46</dateline>
      <phone></phone>
      <qq></qq>
      <weixin></weixin>
      <status>0</status>
    </data>
    <sqltime>0.02445s</sqltime>
</root>

参数名类型必填说明示例
code是http状态码200
result是错误信息状态码OK
count是数组成员数11
data是数组

data>>uid是用户uid3
data>>username是用户名demo
data>>email是邮箱2234@qq.com
data>>credits是软件积分15
data>>jiaoyi是交易积分0
data>>groupid是用户组id0
data>>groupexpiry是用户组到期时间,0为永久0
data>>adminid是管理组id0
data>>token是token令牌837e6ZB6zYCy0SsCVqVJ_xin_xiu_wuEh_xinxiu_zhDX6Wgqh_xinxiu_nIIzl5zOdxN7ID9vSTlyk8x6pgO0S2s
data>>sgin是登陆卡号18E100B850FBFEEAEC06D292D4A67CAA
data>>dateline是卡号到期时间(适用于计时模式)2020-03-08 00:14:46
data>>phone是绑定手机号

data>>qq是绑定QQid

data>>status是帐号状态0-正常、1-禁止0
data>>weixin是


sqltime是页面执行时间(秒)0.02445s


页: [1]
查看完整版本: 第四节:如何调用api接口?