1252 lines
47 KiB
JSON
1252 lines
47 KiB
JSON
{
|
||
"info": {
|
||
"name": "每日任务与周任务|正式接口和测试接口",
|
||
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
|
||
"description": "单文件导入:Postman Import 本JSON,然后在Collection的Variables中填写 baseUrl(不带末尾/)、uid、token,先发送「读取每日任务和周任务」。无需另导入Environment。\n\n所有请求与Cocos客户端保持一致:POST,application/x-www-form-urlencoded。token放表单,不使用Bearer认证。正式接口共2个路由;dailyTaskDebug包含8种action,按taskId/slot提供了独立示例。\n\n成功响应自动保存taskJson和dailyTaskId0~4。taskId为空或已不在当前任务列表时,自动选中slot对应任务;之后可手动修改taskId。更换uid或gameName后请先重新读取,勿直接保存其他账号的旧快照。\n\n正式调用:读取 → 修改progressValue并保存指定任务进度(或在客户端完成任务)→ 领取每日奖励 → 读取周进度 → 选择rewardId领取周奖励。\n\n调试调用:完成指定/全部每日任务 → 正式领取每日奖励;设置weeklyStars到35/70/105/140 → 正式领取对应周奖励。请求均是独立的手动工具,不要直接Runner运行整个Collection,重置请求会覆盖选定账号任务状态。\n\n任务完成不等于领取:每日奖励领取成功才增加周累计鱼罐头;周累计最多140。周领奖不会扣除罐头,没有weekly_15档。状态:0=未完成,1=可领取,2=已领取。所有每日任务直接开放,无需依次解锁。\n\n接口只落库任务/领取状态并返回rewards;现有客户端负责金币、道具等资产入账。Postman调用领奖不会自动执行客户端发奖逻辑。\n\n当前测试接口限制:只访问users,数据库账号isDebug必须为true或字符串true;请求isDebug不能开通权限。debugKey校验目前被注释,保留为默认禁用字段,gameName不适用于该接口。\n\n已知服务端问题:当前dailyTaskDebug.ts保存处调用db.collection(dbname),但dbname未定义,成功路径会报错。此Collection未修改服务端;调用测试操作前需修复并发布对应函数。仓库缺少dailyTaskDebug.yaml,目标环境需已发布该HTTP函数并支持POST。\n\n文件按本地当前实现核对生成;未对线上账号执行任何请求。旧dailyTaskDebug.API.md中的依次解锁、debugKey必填和gameName支持说明已过时。"
|
||
},
|
||
"auth": {
|
||
"type": "noauth"
|
||
},
|
||
"variable": [
|
||
{
|
||
"key": "baseUrl",
|
||
"value": "",
|
||
"type": "string",
|
||
"description": "Laf应用HTTP地址,不带末尾斜杠;请使用需要调试的环境。"
|
||
},
|
||
{
|
||
"key": "uid",
|
||
"value": "",
|
||
"type": "string",
|
||
"description": "账号ID;调用测试接口时必须是users中的调试账号。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "",
|
||
"type": "string",
|
||
"description": "该账号当前登录token,不是Bearer前缀。"
|
||
},
|
||
{
|
||
"key": "gameName",
|
||
"value": "",
|
||
"type": "string",
|
||
"description": "仅正式接口适用:iaa选择usersAd,其他值/空字符串选择users。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "false",
|
||
"type": "string",
|
||
"description": "兼容客户端请求字段,不授予调试权限。"
|
||
},
|
||
{
|
||
"key": "taskId",
|
||
"value": "",
|
||
"type": "string",
|
||
"description": "每日任务ID。首次读取后按slot自动填入;可手动修改。"
|
||
},
|
||
{
|
||
"key": "slot",
|
||
"value": "0",
|
||
"type": "string",
|
||
"description": "每日任务槽位,0~4;影响按slot测试请求和taskId首次自动选择。"
|
||
},
|
||
{
|
||
"key": "progressValue",
|
||
"value": "1",
|
||
"type": "string",
|
||
"description": "保存正式任务进度或设置测试进度时使用,范围0~任务target。"
|
||
},
|
||
{
|
||
"key": "rewardId",
|
||
"value": "weekly_35",
|
||
"type": "string",
|
||
"description": "周奖励ID:weekly_35、weekly_70、weekly_105、weekly_140。"
|
||
},
|
||
{
|
||
"key": "weeklyStars",
|
||
"value": "35",
|
||
"type": "string",
|
||
"description": "测试接口设置的周累计鱼罐头数,范围0~140。"
|
||
},
|
||
{
|
||
"key": "starsDelta",
|
||
"value": "15",
|
||
"type": "string",
|
||
"description": "测试接口增减鱼罐头,允许负数;最终总数限制在0~140。"
|
||
},
|
||
{
|
||
"key": "debugKey",
|
||
"value": "",
|
||
"type": "string",
|
||
"description": "当前校验被注释,表单字段默认禁用;目标部署恢复校验时再填写并启用。"
|
||
},
|
||
{
|
||
"key": "taskJson",
|
||
"value": "",
|
||
"type": "string",
|
||
"description": "成功响应自动保存的完整任务快照;用于批量保存前可手工修改dailyTasks[].value。"
|
||
},
|
||
{
|
||
"key": "dailyTaskId0",
|
||
"value": "",
|
||
"type": "string",
|
||
"description": "自动保存的slot=0任务ID,可在Body使用{{dailyTaskId0}}。"
|
||
},
|
||
{
|
||
"key": "dailyTaskId1",
|
||
"value": "",
|
||
"type": "string",
|
||
"description": "自动保存的slot=1任务ID,可在Body使用{{dailyTaskId1}}。"
|
||
},
|
||
{
|
||
"key": "dailyTaskId2",
|
||
"value": "",
|
||
"type": "string",
|
||
"description": "自动保存的slot=2任务ID,可在Body使用{{dailyTaskId2}}。"
|
||
},
|
||
{
|
||
"key": "dailyTaskId3",
|
||
"value": "",
|
||
"type": "string",
|
||
"description": "自动保存的slot=3任务ID,可在Body使用{{dailyTaskId3}}。"
|
||
},
|
||
{
|
||
"key": "dailyTaskId4",
|
||
"value": "",
|
||
"type": "string",
|
||
"description": "自动保存的slot=4任务ID,可在Body使用{{dailyTaskId4}}。"
|
||
}
|
||
],
|
||
"event": [
|
||
{
|
||
"listen": "prerequest",
|
||
"script": {
|
||
"type": "text/javascript",
|
||
"exec": [
|
||
"const base = String(pm.variables.get(\"baseUrl\") || \"\").trim();",
|
||
"if (!/^https?:\\/\\//.test(base) || base.endsWith(\"/\")) throw new Error(\"请填写baseUrl(http(s)地址,不带末尾斜杠)。\");",
|
||
"if (!String(pm.variables.get(\"uid\") || \"\").trim()) throw new Error(\"请在Collection Variables填写uid。\");"
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"listen": "test",
|
||
"script": {
|
||
"type": "text/javascript",
|
||
"exec": [
|
||
"pm.test(\"HTTP请求成功\", () => pm.expect(pm.response.code).to.be.within(200, 299));",
|
||
"let result;",
|
||
"try { result = pm.response.json(); } catch (error) {",
|
||
" pm.test(\"响应为JSON\", () => { throw error; });",
|
||
"}",
|
||
"if (result) {",
|
||
" pm.test(\"业务操作成功\", () => pm.expect(result.code, result.msg || \"检查响应详情\").to.eql(1));",
|
||
" const task = result.data && result.data.task;",
|
||
" if (result.code === 1 && task && Array.isArray(task.dailyTasks)) {",
|
||
" pm.collectionVariables.set(\"taskJson\", JSON.stringify(task));",
|
||
" task.dailyTasks.forEach(item => pm.collectionVariables.set(\"dailyTaskId\" + item.slot, item.taskId));",
|
||
" const selected = String(pm.variables.get(\"taskId\") || \"\");",
|
||
" if (!task.dailyTasks.some(item => item.taskId === selected)) {",
|
||
" const slot = Number(pm.variables.get(\"slot\") || 0);",
|
||
" const item = task.dailyTasks.find(item => item.slot === slot) || task.dailyTasks[0];",
|
||
" pm.collectionVariables.set(\"taskId\", item ? item.taskId : \"\");",
|
||
" }",
|
||
" }",
|
||
"}"
|
||
]
|
||
}
|
||
}
|
||
],
|
||
"item": [
|
||
{
|
||
"name": "01 正式接口",
|
||
"description": "正式接口同时支持users和usersAd。周进度与每日任务由同一个读取接口返回。",
|
||
"item": [
|
||
{
|
||
"name": "读取每日任务和周任务",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "gameName",
|
||
"value": "{{gameName}}",
|
||
"type": "text",
|
||
"description": "可选。iaa使用usersAd;留空或其他值使用users。"
|
||
},
|
||
{
|
||
"key": "action",
|
||
"value": "read",
|
||
"type": "text",
|
||
"description": "固定值read。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/dayTaskInfo",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"dayTaskInfo"
|
||
]
|
||
},
|
||
"description": "返回data.task,其中dailyTasks为每日任务列表,weeklyStars为周鱼罐头累计,weeklyRewards为周宝箱列表,dayEndsAt/weekEndsAt为毫秒时间戳。读取可能刷新跨日/跨周任务。状态:0=未完成,1=可领取,2=已领取。所有每日任务直接开放,无需依次解锁。"
|
||
}
|
||
},
|
||
{
|
||
"name": "保存指定每日任务进度",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "gameName",
|
||
"value": "{{gameName}}",
|
||
"type": "text",
|
||
"description": "可选。iaa使用usersAd;留空或其他值使用users。"
|
||
},
|
||
{
|
||
"key": "action",
|
||
"value": "save",
|
||
"type": "text",
|
||
"description": "固定值save。"
|
||
},
|
||
{
|
||
"key": "task",
|
||
"value": "{{taskProgressPayload}}",
|
||
"type": "text",
|
||
"description": "Pre-request Script按taskId和progressValue生成JSON字符串,结构为{dailyTasks:[{taskId,value}]}。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/dayTaskInfo",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"dayTaskInfo"
|
||
]
|
||
},
|
||
"description": "先读取任务,设置taskId和progressValue后发送。只覆盖指定任务的value,不是增量;服务端限制到0~target,已领取状态保持2。该接口不能修改周罐头或奖励配置。"
|
||
},
|
||
"event": [
|
||
{
|
||
"listen": "prerequest",
|
||
"script": {
|
||
"type": "text/javascript",
|
||
"exec": [
|
||
"const id = String(pm.variables.get(\"taskId\") || \"\").trim();",
|
||
"if (!id) throw new Error(\"请先读取任务信息,并填写 taskId 或使用自动保存的任务ID。\");",
|
||
"const value = Number(pm.variables.get(\"progressValue\"));",
|
||
"if (String(pm.variables.get(\"progressValue\") || \"\").trim() === \"\" || !Number.isFinite(value)) throw new Error(\"progressValue 必须填写数字。\");",
|
||
"pm.variables.set(\"taskProgressPayload\", JSON.stringify({dailyTasks: [{taskId: id, value}]}));"
|
||
]
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"name": "保存每日任务完整快照",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "gameName",
|
||
"value": "{{gameName}}",
|
||
"type": "text",
|
||
"description": "可选。iaa使用usersAd;留空或其他值使用users。"
|
||
},
|
||
{
|
||
"key": "action",
|
||
"value": "save",
|
||
"type": "text",
|
||
"description": "固定值save。"
|
||
},
|
||
{
|
||
"key": "task",
|
||
"value": "{{taskJson}}",
|
||
"type": "text",
|
||
"description": "JSON字符串。先读取生成taskJson,再按需修改其中dailyTasks[].value。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/dayTaskInfo",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"dayTaskInfo"
|
||
]
|
||
},
|
||
"description": "可批量更新多个每日任务进度。服务端实际只取dailyTasks[].taskId/value;其余state、stars、rewards、weeklyStars等由服务端维护,不会按提交值发奖。"
|
||
},
|
||
"event": [
|
||
{
|
||
"listen": "prerequest",
|
||
"script": {
|
||
"type": "text/javascript",
|
||
"exec": [
|
||
"const raw = pm.variables.get(\"taskJson\");",
|
||
"if (!raw) throw new Error(\"请先读取任务,生成taskJson。\");",
|
||
"const task = JSON.parse(raw);",
|
||
"if (!Array.isArray(task.dailyTasks)) throw new Error(\"taskJson必须是含dailyTasks数组的JSON对象。\");"
|
||
]
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"name": "领取每日任务奖励",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "gameName",
|
||
"value": "{{gameName}}",
|
||
"type": "text",
|
||
"description": "可选。iaa使用usersAd;留空或其他值使用users。"
|
||
},
|
||
{
|
||
"key": "scope",
|
||
"value": "daily",
|
||
"type": "text",
|
||
"description": "固定值daily。"
|
||
},
|
||
{
|
||
"key": "taskId",
|
||
"value": "{{taskId}}",
|
||
"type": "text",
|
||
"description": "必须为当前dailyTasks中的taskId。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/getTaskReward",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"getTaskReward"
|
||
]
|
||
},
|
||
"description": "仅state=1时可领取。成功后该任务state=2,周鱼罐头增加task.stars,上限140;data.rewards为该任务实际奖励。不得携带rewardId代替taskId。重复领取返回code=0。"
|
||
},
|
||
"event": [
|
||
{
|
||
"listen": "prerequest",
|
||
"script": {
|
||
"type": "text/javascript",
|
||
"exec": [
|
||
"const id = String(pm.variables.get(\"taskId\") || \"\").trim();",
|
||
"if (!id) throw new Error(\"请先读取任务信息,并填写 taskId 或使用自动保存的任务ID。\");"
|
||
]
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"name": "领取周宝箱奖励",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "gameName",
|
||
"value": "{{gameName}}",
|
||
"type": "text",
|
||
"description": "可选。iaa使用usersAd;留空或其他值使用users。"
|
||
},
|
||
{
|
||
"key": "scope",
|
||
"value": "weekly",
|
||
"type": "text",
|
||
"description": "固定值weekly。"
|
||
},
|
||
{
|
||
"key": "rewardId",
|
||
"value": "{{rewardId}}",
|
||
"type": "text",
|
||
"description": "weekly_35、weekly_70、weekly_105、weekly_140。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/getTaskReward",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"getTaskReward"
|
||
]
|
||
},
|
||
"description": "仅达到对应周鱼罐头目标且未领取时成功。Body只发送rewardId,不发送taskId,避免taskId=undefined的历史问题。不存在weekly_15。成功后宝箱state=2,data.rewards为奖励清单。"
|
||
},
|
||
"event": [
|
||
{
|
||
"listen": "prerequest",
|
||
"script": {
|
||
"type": "text/javascript",
|
||
"exec": [
|
||
"if (![\"weekly_35\", \"weekly_70\", \"weekly_105\", \"weekly_140\"].includes(pm.variables.get(\"rewardId\"))) throw new Error(\"rewardId请选择weekly_35/70/105/140。\");"
|
||
]
|
||
}
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"name": "02 每日任务测试接口",
|
||
"description": "均调用dailyTaskDebug,要求users调试账号。当前服务端存在dbname未定义错误,需先修复并发布。taskId非空时优先于slot,故两种定位示例分开提供。",
|
||
"item": [
|
||
{
|
||
"name": "设置每日任务进度(按taskId)",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "debugKey",
|
||
"value": "{{debugKey}}",
|
||
"type": "text",
|
||
"description": "当前代码的debugKey校验已注释;仅目标环境恢复该校验时填写并启用。",
|
||
"disabled": true
|
||
},
|
||
{
|
||
"key": "action",
|
||
"value": "set_daily_progress",
|
||
"type": "text",
|
||
"description": "设置进度。"
|
||
},
|
||
{
|
||
"key": "taskId",
|
||
"value": "{{taskId}}",
|
||
"type": "text",
|
||
"description": "任务ID。"
|
||
},
|
||
{
|
||
"key": "value",
|
||
"value": "{{progressValue}}",
|
||
"type": "text",
|
||
"description": "目标进度值,非增量。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/dailyTaskDebug",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"dailyTaskDebug"
|
||
]
|
||
},
|
||
"description": "value会限制在0~target;不会将已领取任务改回未领取。想重复领奖先reset_daily。"
|
||
},
|
||
"event": [
|
||
{
|
||
"listen": "prerequest",
|
||
"script": {
|
||
"type": "text/javascript",
|
||
"exec": [
|
||
"const id = String(pm.variables.get(\"taskId\") || \"\").trim();",
|
||
"if (!id) throw new Error(\"请先读取任务信息,并填写 taskId 或使用自动保存的任务ID。\");",
|
||
"const value = Number(pm.variables.get(\"progressValue\"));",
|
||
"if (String(pm.variables.get(\"progressValue\") || \"\").trim() === \"\" || !Number.isFinite(value)) throw new Error(\"progressValue 必须填写数字。\");"
|
||
]
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"name": "设置每日任务进度(按slot)",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "debugKey",
|
||
"value": "{{debugKey}}",
|
||
"type": "text",
|
||
"description": "当前代码的debugKey校验已注释;仅目标环境恢复该校验时填写并启用。",
|
||
"disabled": true
|
||
},
|
||
{
|
||
"key": "action",
|
||
"value": "set_daily_progress",
|
||
"type": "text",
|
||
"description": "设置进度。"
|
||
},
|
||
{
|
||
"key": "slot",
|
||
"value": "{{slot}}",
|
||
"type": "text",
|
||
"description": "0~4,不同时发送taskId。"
|
||
},
|
||
{
|
||
"key": "value",
|
||
"value": "{{progressValue}}",
|
||
"type": "text",
|
||
"description": "目标进度值,非增量。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/dailyTaskDebug",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"dailyTaskDebug"
|
||
]
|
||
},
|
||
"description": "按当前任务列表的槽位定位;默认slot=0。"
|
||
},
|
||
"event": [
|
||
{
|
||
"listen": "prerequest",
|
||
"script": {
|
||
"type": "text/javascript",
|
||
"exec": [
|
||
"const slot = Number(pm.variables.get(\"slot\"));",
|
||
"if (!Number.isInteger(slot) || slot < 0 || slot > 4) throw new Error(\"slot 必须是0到4的整数。\");",
|
||
"const value = Number(pm.variables.get(\"progressValue\"));",
|
||
"if (String(pm.variables.get(\"progressValue\") || \"\").trim() === \"\" || !Number.isFinite(value)) throw new Error(\"progressValue 必须填写数字。\");"
|
||
]
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"name": "完成每日任务(按taskId)",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "debugKey",
|
||
"value": "{{debugKey}}",
|
||
"type": "text",
|
||
"description": "当前代码的debugKey校验已注释;仅目标环境恢复该校验时填写并启用。",
|
||
"disabled": true
|
||
},
|
||
{
|
||
"key": "action",
|
||
"value": "complete_daily",
|
||
"type": "text",
|
||
"description": "把任务进度设为target。"
|
||
},
|
||
{
|
||
"key": "taskId",
|
||
"value": "{{taskId}}",
|
||
"type": "text",
|
||
"description": "任务ID。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/dailyTaskDebug",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"dailyTaskDebug"
|
||
]
|
||
},
|
||
"description": "仅将未领取任务设为可领取,不增加周鱼罐头,不直接发奖。随后调用正式每日领奖。"
|
||
},
|
||
"event": [
|
||
{
|
||
"listen": "prerequest",
|
||
"script": {
|
||
"type": "text/javascript",
|
||
"exec": [
|
||
"const id = String(pm.variables.get(\"taskId\") || \"\").trim();",
|
||
"if (!id) throw new Error(\"请先读取任务信息,并填写 taskId 或使用自动保存的任务ID。\");"
|
||
]
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"name": "完成每日任务(按slot)",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "debugKey",
|
||
"value": "{{debugKey}}",
|
||
"type": "text",
|
||
"description": "当前代码的debugKey校验已注释;仅目标环境恢复该校验时填写并启用。",
|
||
"disabled": true
|
||
},
|
||
{
|
||
"key": "action",
|
||
"value": "complete_daily",
|
||
"type": "text",
|
||
"description": "把任务进度设为target。"
|
||
},
|
||
{
|
||
"key": "slot",
|
||
"value": "{{slot}}",
|
||
"type": "text",
|
||
"description": "0~4,不同时发送taskId。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/dailyTaskDebug",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"dailyTaskDebug"
|
||
]
|
||
},
|
||
"description": "适合每日任务ID变化后的快速测试。先记下响应中对应槽位taskId,再使用正式每日领奖请求。"
|
||
},
|
||
"event": [
|
||
{
|
||
"listen": "prerequest",
|
||
"script": {
|
||
"type": "text/javascript",
|
||
"exec": [
|
||
"const slot = Number(pm.variables.get(\"slot\"));",
|
||
"if (!Number.isInteger(slot) || slot < 0 || slot > 4) throw new Error(\"slot 必须是0到4的整数。\");"
|
||
]
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"name": "完成全部每日任务",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "debugKey",
|
||
"value": "{{debugKey}}",
|
||
"type": "text",
|
||
"description": "当前代码的debugKey校验已注释;仅目标环境恢复该校验时填写并启用。",
|
||
"disabled": true
|
||
},
|
||
{
|
||
"key": "action",
|
||
"value": "complete_all_daily",
|
||
"type": "text",
|
||
"description": "所有未领取任务进度设为target。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/dailyTaskDebug",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"dailyTaskDebug"
|
||
]
|
||
},
|
||
"description": "所有任务均已开放,完成后可任选任务领取,不需要依次解锁;已领取任务不受影响。"
|
||
}
|
||
},
|
||
{
|
||
"name": "重置每日任务",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "debugKey",
|
||
"value": "{{debugKey}}",
|
||
"type": "text",
|
||
"description": "当前代码的debugKey校验已注释;仅目标环境恢复该校验时填写并启用。",
|
||
"disabled": true
|
||
},
|
||
{
|
||
"key": "action",
|
||
"value": "reset_daily",
|
||
"type": "text",
|
||
"description": "重新生成当天每日任务。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/dailyTaskDebug",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"dailyTaskDebug"
|
||
]
|
||
},
|
||
"description": "清除当前每日进度及领取状态,重新抽取任务。正常同周内保留周鱼罐头和周奖励状态;跨周时常规刷新规则仍生效。响应会更新taskJson及任务ID变量。"
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"name": "03 周任务测试接口",
|
||
"description": "使用数据库isDebug已开启的users账号。接口只修改任务状态,实际奖励需要正式领奖;当前源码的dbname错误需先修复。",
|
||
"item": [
|
||
{
|
||
"name": "设置周鱼罐头总数",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "debugKey",
|
||
"value": "{{debugKey}}",
|
||
"type": "text",
|
||
"description": "当前代码的debugKey校验已注释;仅目标环境恢复该校验时填写并启用。",
|
||
"disabled": true
|
||
},
|
||
{
|
||
"key": "action",
|
||
"value": "set_weekly_stars",
|
||
"type": "text",
|
||
"description": "设置总数,非增量。"
|
||
},
|
||
{
|
||
"key": "value",
|
||
"value": "{{weeklyStars}}",
|
||
"type": "text",
|
||
"description": "会限制在0~140。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/dailyTaskDebug",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"dailyTaskDebug"
|
||
]
|
||
},
|
||
"description": "把weeklyStars设为35/70/105/140可测试对应档位。未领取宝箱会重新计算是否可领;已领取状态不撤销。"
|
||
},
|
||
"event": [
|
||
{
|
||
"listen": "prerequest",
|
||
"script": {
|
||
"type": "text/javascript",
|
||
"exec": [
|
||
"const value = Number(pm.variables.get(\"weeklyStars\"));",
|
||
"if (String(pm.variables.get(\"weeklyStars\") || \"\").trim() === \"\" || !Number.isFinite(value)) throw new Error(\"weeklyStars 必须填写数字。\");"
|
||
]
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"name": "增加或减少周鱼罐头",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "debugKey",
|
||
"value": "{{debugKey}}",
|
||
"type": "text",
|
||
"description": "当前代码的debugKey校验已注释;仅目标环境恢复该校验时填写并启用。",
|
||
"disabled": true
|
||
},
|
||
{
|
||
"key": "action",
|
||
"value": "add_weekly_stars",
|
||
"type": "text",
|
||
"description": "按增量调整总数。"
|
||
},
|
||
{
|
||
"key": "value",
|
||
"value": "{{starsDelta}}",
|
||
"type": "text",
|
||
"description": "允许正数或负数;最终总数限制在0~140。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/dailyTaskDebug",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"dailyTaskDebug"
|
||
]
|
||
},
|
||
"description": "例如starsDelta=15增加15;-15减少15。不会将已领取宝箱重置为未领取。"
|
||
},
|
||
"event": [
|
||
{
|
||
"listen": "prerequest",
|
||
"script": {
|
||
"type": "text/javascript",
|
||
"exec": [
|
||
"const value = Number(pm.variables.get(\"starsDelta\"));",
|
||
"if (String(pm.variables.get(\"starsDelta\") || \"\").trim() === \"\" || !Number.isFinite(value)) throw new Error(\"starsDelta 必须填写数字。\");"
|
||
]
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"name": "重置周进度和周宝箱",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "debugKey",
|
||
"value": "{{debugKey}}",
|
||
"type": "text",
|
||
"description": "当前代码的debugKey校验已注释;仅目标环境恢复该校验时填写并启用。",
|
||
"disabled": true
|
||
},
|
||
{
|
||
"key": "action",
|
||
"value": "reset_weekly",
|
||
"type": "text",
|
||
"description": "周鱼罐头清零,重置所有周宝箱状态。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/dailyTaskDebug",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"dailyTaskDebug"
|
||
]
|
||
},
|
||
"description": "保留当天每日任务进度及领取状态。可与设置周罐头请求配合重复测试周领奖。"
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"name": "04 重置全部任务",
|
||
"description": "独立重置工具,按需发送。",
|
||
"item": [
|
||
{
|
||
"name": "重置每日和周任务",
|
||
"request": {
|
||
"method": "POST",
|
||
"header": [
|
||
{
|
||
"key": "Content-Type",
|
||
"value": "application/x-www-form-urlencoded"
|
||
}
|
||
],
|
||
"body": {
|
||
"mode": "urlencoded",
|
||
"urlencoded": [
|
||
{
|
||
"key": "uid",
|
||
"value": "{{uid}}",
|
||
"type": "text",
|
||
"description": "必填,目标账号ID。"
|
||
},
|
||
{
|
||
"key": "token",
|
||
"value": "{{token}}",
|
||
"type": "text",
|
||
"description": "当前账号登录token,放在表单中;有token的账号会校验。"
|
||
},
|
||
{
|
||
"key": "isDebug",
|
||
"value": "{{isDebug}}",
|
||
"type": "text",
|
||
"description": "兼容客户端附加字段;这些接口不以此字段决定调试权限。"
|
||
},
|
||
{
|
||
"key": "debugKey",
|
||
"value": "{{debugKey}}",
|
||
"type": "text",
|
||
"description": "当前代码的debugKey校验已注释;仅目标环境恢复该校验时填写并启用。",
|
||
"disabled": true
|
||
},
|
||
{
|
||
"key": "action",
|
||
"value": "reset_all",
|
||
"type": "text",
|
||
"description": "重新生成每日任务并清零周进度、周领奖状态。"
|
||
}
|
||
]
|
||
},
|
||
"url": {
|
||
"raw": "{{baseUrl}}/dailyTaskDebug",
|
||
"host": [
|
||
"{{baseUrl}}"
|
||
],
|
||
"path": [
|
||
"dailyTaskDebug"
|
||
]
|
||
},
|
||
"description": "会覆盖所选账号当前每日和周任务状态;不会撤销客户端已经发放的金币、道具。响应会更新快照及任务ID变量。"
|
||
}
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|