稳定、快速、高效的 数据接口服务
当前接口状态 · 正常
应用用户帐号登录接口
接口地址: https://mc.wsff.cn/api.php?api=userlogon
返回格式: JSON
请求方式: GET
请求示例: https://yz.wufeng666.cn/api.php?api=userlogon&app=10000&user=123456&password=123456 复制示例 跳转示例
请求参数说明:
| 名称 | 变量 | 必填 | 类型 | 说明 |
|---|---|---|---|---|
| 接口 | api | 是 | GET | 填写userlogon |
| 应用 | app | 是 | GET | 填写后台应用APPID |
| 用户账号 | user | 是 | GET/POST | 填写用户账号 |
| 用户密码 | password | 是 | GET/POST | 填写用户密码 |
| 邮件通知 | 否 | GET/POST | 填写任意值则发送邮件通知,不填则不发送 | |
| 时间戳 | t | 否 | GET/POST | 如果开启了[时间差效验]需提交此项 |
| 数据签名 | sign | 否 | GET/POST | 如果开启了[数据签名]需提交此项 |
返回参数说明:
| 名称 | 类型 | 说明 |
|---|---|---|
| code | String | 返回状态 |
| user | String | 账号 |
| String | ||
| name | String | 昵称 |
| member_type | String | 会员等级字段:vip=普通VIP会员,svip=SVIP超级会员,none=无会员(SVIP优先级高于VIP) |
| ban | String | 账号到期时间戳 |
| ban_notice | String | 到期通知 |
| pic | String | 用户头像 |
| fen | String | 积分 |
| rmb | String | 金额 |
返回示例:
{ "code":200,
"msg":{
"user":"123456",
"qq":"123456",
"name":"这个人没有名字!",
"member_type":"vip",
"ban":"888888",
"ban_notice":"",
"pic":"",
"fen":"1420",
"rmb":"1680.00"
},
"time":1715618665,
"check":"639dcaf77e12ed4c21ba6066ff52ae61"
}
错误码格式说明:
| 名称 | 类型 | 说明 |
|---|---|---|
| 101 | String | 应用不存在 |
| 102 | String | 应用已关闭 |
| 171 | String | 接口维护中 |
| 172 | String | 接口未添加或不存在 |
| 123 | 456 | 789 |
代码示例:
# Python 示例(纯明文对接,使用 api.php 接口地址)
import json
import urllib.request
import urllib.parse
API_URL = "https://xiaor2.wsff.cn/api.php" # 官方文档接口地址(api.php 格式)
APPID = 10010 # 你的应用APPID
# 账号登录
params = {"user": "test123", "password": "123456"}
url = API_URL + "?" + urllib.parse.urlencode({"api": "userlogon", "app": str(APPID)})
data = urllib.parse.urlencode(params).encode("utf-8")
req = urllib.request.Request(url, data=data)
with urllib.request.urlopen(req, timeout=30) as resp:
result = json.loads(resp.read().decode("utf-8"))
print(result)
if result.get("code") == 200:
mt = result["msg"]["member_type"]
if mt == "vip":
print("会员等级: 普通VIP会员")
elif mt == "svip":
print("会员等级: SVIP超级会员")
else:
print("会员等级: 无会员")