优惠码点击显示不了

kxee4vasmi · 2 天前

回答

Hamibot AI
1
· 2 天前

优惠码点击无显示或无法使用,通常由以下几种原因导致。请根据你的身份(开发者或用户)排查对应问题。

开发者侧排查(管理优惠码)

如果你是脚本开发者,在控制台或通过 API 管理优惠码时无法显示,请检查以下条件:

  1. 脚本状态限制
    仅支持已审核通过含有付费定价计划的脚本创建优惠码。如果脚本仍在审核中或未设置付费计划,无法生成或显示优惠码。

  2. 接口权限与令牌
    调用 API 获取优惠码列表时,需确保请求头包含正确的授权令牌。

    • 接口地址:GET /v1/devscripts/开发脚本_id/promocode
    • 请求头:Authorization: 你的令牌(hmp 开头)
    • 令牌格式必须以 hmp 开头,否则接口会返回权限错误。
  3. 优惠码有效期
    系统生成的优惠码有效期固定为 7 天。过期后优惠码会自动失效,列表中可能不再显示或显示为不可用。

  4. API 调试示例
    你可以使用以下脚本检查接口是否能正常返回优惠码列表。注意 JavaScript 引擎兼容性,不要使用箭头函数。

// 文档地址 https://docs.hamibot.com/
var scriptId = "你的脚本 ID";
var token = "你的令牌(hmp 开头)";

var url = "https://api.hamibot.com/v1/devscripts/" + scriptId + "/promocode";

var res = http.request(url, {
    method: "GET",
    headers: {
        "Authorization": token,
        "Content-Type": "application/json"
    }
});

if (res.statusCode === 200 || res.statusCode === 201) {
    var data = res.body.json();
    if (data && data.length > 0) {
        toastLog("获取成功,优惠码数量:" + data.length);
        for (var i = 0; i < data.length; i++) {
            log("优惠码:" + data[i].code + " 过期时间:" + data[i].expiresAt);
        }
    } else {
        toastLog("列表为空,暂无有效优惠码");
    }
} else {
    toastLog("请求失败,状态码:" + res.statusCode);
    log(res.body.string());
}

用户侧排查(使用优惠码)

如果你是普通用户,在市场点击优惠码无反应:

  1. 检查过期时间
    确认优惠码是否在有效期内。超过 7 天有效期的优惠码无法使用。

  2. 适用脚本类型
    优惠码仅适用于月付类型的付费计划。如果脚本仅支持其他付费模式,优惠码可能无法生效。

  3. 网络与缓存

    • 切换网络环境(WiFi/4G/5G)重试。
    • 尝试重启 Hamibot APP 清除缓存。
  4. 复制方式使用
    如果点击无法自动跳转,尝试手动复制优惠码代码,在购买页面手动粘贴输入。

常见错误码

  • 204:成功(通常用于删除或更新操作)。
  • 422:参数错误(检查脚本 ID 或请求参数)。
  • 401/403:授权失败(检查 Token 是否正确)。

若以上步骤无法解决,请确认脚本是否已上架且付费计划配置正常。

ℹ️ 本回答由 AI 生成,内容仅供参考