PLG 试用到期横幅 - 产品内升级引导

前端可调用 GET /api/marketing/trial-status?user_id=xxx 获取试用状态,在产品内展示横幅引导升级。

API 响应示例

{
  "in_trial": true,
  "days_left": 5,
  "expiring_soon": false,
  "upgrade_url": "/developer/pricing",
  "message": "试用剩余 5 天"
}

expiring_soon: true 时(剩余 ≤3 天)可高亮展示。

嵌入示例(原生 JS)

<div id="trial-banner" style="display:none;"></div>
<script>
(async function() {
  const userId = 'CURRENT_USER_ID';  // 从登录态获取
  if (!userId) return;
  const r = await fetch('/api/marketing/trial-status?user_id=' + encodeURIComponent(userId));
  const d = await r.json();
  const el = document.getElementById('trial-banner');
  if (d.in_trial && d.days_left !== undefined) {
    el.style.display = 'block';
    el.style.cssText = 'padding:10px 20px;background:' + (d.expiring_soon ? '#ff9800' : '#e3f2fd') + ';text-align:center;';
    el.innerHTML = d.message + ' <a href="' + d.upgrade_url + '">立即升级</a>';
  }
})();
</script>

环境变量

变量 说明 默认
MARKETING_TRIAL_DAYS 试用天数 14
MARKETING_UPGRADE_URL 升级链接 /developer/pricing