万象棋
接口说明
万象棋
【卡牌列表】f=cards——type=hero|talent|equip|effect|all(默认all);q=关键词(名称/描述/阵营);quality=品质(如1,2,3);camp=阵营(中文名或camp_id);keyword=卡牌关键词;sort=default|name|quality|id;page/size分页;fields=brief|full。
【卡牌详情】f=card——id=卡牌id,name=卡牌名,二选一必填(如?f=card&id=1941);含觉醒牌、关联牌,以及缩略图/头像/立绘/卡面等官方图片直链。
【棋手列表】f=lords——所有棋手,含技能/秘技/专属三个槽位,以及头像、立绘、海报、背景等官方图片直链。
【棋手详情】f=lord——id=棋手id,name=棋手名,二选一必填(如?f=lord&id=10)。
【阵容列表】f=lineups——阵容推荐;q=关键词;lord=棋手;hero=英雄;sort=use|new|score|like|name。
【阵容详情】f=lineup——key从阵容列表取(如?f=lineup&key=10003);含分回合运营文案、站位、装备建议,以及棋手/英雄头像。
【资讯列表】f=news——公告/新闻/活动/栏目;cat=all|news|notice|activity|column;type=article|video;含历史记录。
【资讯详情】f=newsdetail——id=资讯id(如?f=newsdetail&id=18867853);正文HTML富文本、纯文本、封面图直链与相关阅读。注意:若视频类条目无详情页,返回404并附官方页面地址。
【全局搜索】f=search——q=关键词(如?f=search&q=阿离),一次请求同时搜索卡牌/棋手/阵容/资讯,返回每类命中条数与结果;scope=all|cards|lords|lineups|news(可逗号分隔);size=每类上限(最大50,默认10)。
【数据总览】f=stats——各类数据条数、数据来源与缓存TTL。
请求示例
请求地址
https://api.tangdouz.com/a/wxq/wxq.php?f=cards&type=all
请求地址
https://api.tangdouz.com/a/wxq/wxq.php?f=list
请求地址
https://api.tangdouz.com/a/wxq/wxq.php?f=cards&type=hero&size=5
请求地址
https://api.tangdouz.com/a/wxq/wxq.php?f=cards&q=苏烈&fields=full
请求地址
https://api.tangdouz.com/a/wxq/wxq.php?f=card&id=1941
请求地址
https://api.tangdouz.com/a/wxq/wxq.php?f=lords
请求地址
https://api.tangdouz.com/a/wxq/wxq.php?f=lord&id=10
请求地址
https://api.tangdouz.com/a/wxq/wxq.php?f=lineups&sort=use&size=5
请求地址
https://api.tangdouz.com/a/wxq/wxq.php?f=lineup&key=10003
请求地址
https://api.tangdouz.com/a/wxq/wxq.php?f=news&cat=notice&size=5
请求地址
https://api.tangdouz.com/a/wxq/wxq.php?f=newsdetail&id=18867853
请求地址
https://api.tangdouz.com/a/wxq/wxq.php?f=search&q=阿离
请求地址
https://api.tangdouz.com/a/wxq/wxq.php?f=stats
请求参数说明
f=子接口名(cards/card/lords/lord/lineups/lineup/news/newsdetail/search/stats/refresh,不带则返回子接口目录);统一返回{code,msg,meta,data};业务错误一律HTTP200,请以code判断(0成功/400参数错误/403token错误/404未找到)。下方表格由示例地址自动解析,仅id(卡牌/棋手/资讯详情)、key(阵容详情)、q(全局搜索)为必填,其余均可选。通用参数:format=jsonp&callback=cb支持JSONP跨域;pretty=1美化输出;page=页码(默认1);size=每页条数(默认30,最大200);fields=brief|full控制返回详细程度
| 参数名 | 说明 | 是否必填 |
|---|---|---|
f |
cards | 是 |
type |
all | 是 |
size |
5 | 是 |
q |
苏烈 | 是 |
fields |
full | 是 |
id |
1941 | 是 |
sort |
use | 是 |
key |
10003 | 是 |
cat |
notice | 是 |
返回参数说明
| 参数名 | 说明 |
|---|---|
code |
0成功/400参数错误/403token错误/404未找到 |
msg |
提示信息,成功为ok |
meta |
本次请求的元信息(total/page/size/pages/cached/stale等,各子接口略有差异) |
meta.cached |
是否命中服务端缓存 |
meta.stale |
是否为过期兜底数据(数据源暂不可用时返回) |
data |
业务数据,随子接口不同(列表接口为数组,详情接口为对象) |
data[].id |
卡牌/棋手/资讯id(资讯的通用id为iId) |
data[].key |
阵容唯一标识,用于?f=lineup&key= |
data[].images |
官方图片直链集合(icon/portrait/avatar/bg等) |
http |
固定200,便于前端统一处理(业务状态请以code判断) |
JSON返回示例
JSON格式
{
"code": 0,
"msg": "ok",
"meta": {
"redis": true,
"cached": true
},
"data": {
"cards": {
"hero": {
"id": 1,
"name": "英雄牌",
"count": 85
},
"talent": {
"id": 2,
"name": "天赋牌",
"count": 255
},
"equip": {
"id": 3,
"name": "装备牌",
"count": 73
},
"effect": {
"id": 4,
"name": "效果牌",
"count": 98
}
},
"card_total": 511,
"lords": 19,
"lineups": 435,
"news": 186,
"lineup_pages": 25,
"sources": {
"cards": "https:\/\/game.gtimg.cn\/images\/amside\/ide_timer\/589094_oscard_new_{1,2,4,8}.js",
"lords": "https:\/\/game.gtimg.cn\/images\/amside\/ide_timer\/589094_oscard_new_16.js",
"guide": "https:\/\/vasd-cms.qq.com\/cms\/osgamewsq\/prod\/api\/v1\/osgamewsqwsq_info_article_3019.json",
"lineups": "https:\/\/game.gtimg.cn\/images\/amside\/ide_timer\/598252_oslineupbyrecommend_pro_1.js(共25页)",
"news": "https:\/\/apps.game.qq.com\/cmc\/cross?serviceId=389",
"site": "https:\/\/wxq.qq.com\/"
},
"ttl": {
"cards": 43200,
"lords": 43200,
"lineups": 21600,
"news": 600,
"newsdetail": 3600
}
}
}