Bitculator

更新日志

嵌入组件更新日志

可嵌入组件的每一项变更 - URL、参数、密钥、域名与限制 - 最新在前。同一版本内哪些内容保持稳定,详见政策。

  1. 变更

    组件不再建立实时连接

    组件不再与 Bitculator 建立 WebSocket 连接,也不再向访客的浏览器存储写入翻译数据。屏幕上的显示不会有任何变化:组件从未推送实时价格,因此数字始终以页面加载时为准。

  2. 修复

    利息计算器:不足一期的期间与输入上限

    在复利期中途结束的期限现在会按比例计息,且仍会计入该期内的存入金额,增长曲线也按实际经过的时间排布。输入值设有上限:本金 1,000,000,000,000、定投金额 1,000,000,000、利率 1,000%、期限 50 年或 600 个月;超过上限的值会被重置为上限值。

  3. 修复

    利息计算器将利率视为年利率

    利率现在为名义年利率,分摊到各个复利期。此前每一期都按完整利率计算,因此按月复利的 5% 实际按每月 5% 增长;现有嵌入中的结果会相应下降。

  4. 修复

    取消会清除已安排的套餐变更

    现在取消付费嵌入套餐时,也会撤销你已安排的任何降级;套餐将直接持续到已付费周期结束。

  5. 修复

    DCA 日期不再偏移一天

    DCA 开始和结束日期选择器过去将日期读取为 UTC 午夜,导致位于 UTC 以西的访客看到的是前一天。现在它们使用访客本地的日历日。

  6. 新增

    新增八种组件语言

    {locale} 路径段现在还接受 ar(从右到左显示)、sk、th、ko、ro、hu、sr 和 fi,于 9 月 19 日至 24 日之间陆续加入 - 共 27 种语言。

  7. 变更

    组件不设置 cookie;访客 IP 经过哈希处理

    组件页面不再设置会话 cookie 或 XSRF cookie,也不再在访客的浏览器中注册 service worker。无密钥的按访客计数器现在使用 IP 地址的带密钥哈希,没有来源页的无密钥加载会被报告为“直接访问”,而不是按 IP 报告。

  8. 修复

    Zoom 组件的月度和周度行可在其他网站上加载

    /embed/zoom/{slug} 的月度和周度行现在无需会话令牌即可获取,因为位于其他网站 iframe 中的组件无法获得会话令牌。

  9. 修复

    缺少市场数据时的转换器与翻转器

    当任一资产没有可用价格时,转换器不再显示“1 X = 0 Y”,而是不显示数字;当某个交易对没有市值时,市值翻转器会清空数字,而不是在新名称下保留上一个交易对的数字。

  10. 新增

    旧的币种 slug 会重定向

    使用币种旧 slug 的组件 URL 现在会返回 301,指向当前 slug 下的同一组件,并保留查询字符串 - 包括 embed_key。此前它返回 404。

  11. 变更

    更严格的域名录入与匹配

    注册的域名会按浏览器解析 URL 的方式进行解析:去掉协议、路径、端口和开头的 www.,名称转为小写,国际化域名转换为 punycode;任何不是主机名的内容都会被拒绝。嵌入页面的 Referer 也以同样方式归一化。www 以外的子域名仍需单独录入。

  12. 修复

    降级等到周期结束才生效

    改为较低的嵌入套餐现在会在已付费周期结束时生效。此前,相同计费间隔下的降级会立即生效,并在周期中途削减每月限额。升级仍会立即生效。

  13. 变更

    组件错误返回纯文本 “Not Found”

    未知或非活跃的币种 slug 现在返回纯文本 “Not Found” 响应,而不是在你的 iframe 中渲染完整的 Bitculator 网站 - 页眉、侧边栏和页脚。

  14. 变更

    创建密钥需要已验证的邮箱

    现在创建嵌入密钥需要已验证的邮箱地址;使用加密钱包创建的账户不受此限制。密钥创建限制为每分钟 10 次,现有密钥继续有效。

  15. 修复

    新注册的域名立即生效

    自 8 月 14 日起,域名检查结果(包括“未注册”结果)会被缓存 5 分钟,因此刚添加的域名可能在最多 5 分钟内继续返回 403。现在只缓存匹配成功的结果;移除域名仍可能需要最多 5 分钟才能生效。

  16. 变更

    密钥最后使用时间每小时更新

    嵌入控制台中密钥的最后使用时间现在最多每小时写入一次,组件加载也不再计入 Bitculator 自身网站统计中的访问次数。嵌入用量计数不受影响。

  17. 修复

    窄屏上 Zoom 网格按区块分别滚动

    在窄屏宽度下,周度区块与年度、季度和月度区块现在各自独立滚动,因此拖动较长的周度行时不会再把较短的区块横向带动。

  18. 变更

    计算器重新设计;部分区块移除

    7 月 12 日至 16 日期间,计算器组件和翻转器换上了新的布局和输入项,并移除了部分区块:翻转器的 picker、利息计算器的 chart 和 table、税务和贷款计算器的 results,以及质押计算器的 banner、table 和 chart(质押计算器现在直接内联列出从每日到每年的奖励)。访客保存的排列已被重置;请重新构建任何引用了已移除区块的 layout 或 visible 值。

  19. 新增

    可选启用的可扩展框架,用于选择器

    宿主页面可以向组件窗口发送 {type: 'bitculator-embed-host-growable'}。之后组件会向下展开其选择器,并将其计入通过 bitculator-embed-resize 报告的高度;没有这条消息时,选择器会以浮层形式在固定框架内打开。

  20. 变更

    Zoom 组件重建为季节性网格

    /embed/zoom/{slug} 现在以一个网格按年显示年度、季度、月度和周度收益,附带平均值行和胜率汇总,另有一个季度“龙卷风”视图。它取代了之前的季度、月度和周度表格,并且没有外层卡片边框。

  21. 新增

    嵌入控制台中的每日用量图表

    嵌入控制台现在会以图表显示当前计费周期内每天的请求数。

  22. 变更

    嵌入定价移至组件页面

    /{locale}/pricing/embed 现在重定向到 /{locale}/crypto-tools,该页面新增了带结账功能的套餐选择器,以及一个在代码生成器旁逐个预览组件的组件浏览器。

  23. 新增

    嵌入文档发布

    本参考文档已在 /{locale}/documentation/embed/v1 上线,包含代码生成器、身份验证、域名、配额、套餐、每个组件的参数以及点击加载的预览。

  24. 变更

    嵌入配额与 Data API 分离

    嵌入加载现在拥有自己的套餐、计费周期和计数器;在最初两天里,Data API 曾从嵌入套餐中扣除额度。只有嵌入密钥才计入你的嵌入密钥上限;在组件 URL 中使用 Data API 密钥或已过期的密钥会得到 403;组件响应不携带 X-Quota-* 响应头。

  25. 修复

    取消后用量窗口仍按账单日计算

    取消付费嵌入套餐后,用量会继续在你的账单日窗口内计数,直到套餐结束,而不会在周期中途切换为自然月;对于月末的账单日,控制台显示的重置日期也是正确的。

  26. 移除

    嵌入密钥不再适用于 /api/v1

    早期接受嵌入密钥的 JSON 端点 /api/v1/prices 和 /api/v1/widgets/convert/{from}/{to} 已被 Data API 取代,后者只接受自己的密钥。嵌入密钥在 /user/developer/embed 中管理。

  27. 修复

    域名匹配忽略大小写和末尾的点

    嵌入方主机在与你注册的域名比较之前,会被转为小写并去掉任何末尾的点。

  28. 新增

    组件落地页

    /{locale}/crypto-tools 变为一个组件页面,包含实时转换器、可复制的代码片段,以及 Free、Starter 和 Pro 的对比。

  29. 变更

    带密钥的组件需要来源页

    带有 embed_key 但没有 Referer 或 Origin 请求头的加载现在会得到 403;此前这类加载会跳过域名检查。请保留浏览器默认的来源页策略,不要在 iframe 上设置 referrerpolicy="no-referrer"。

  30. 变更

    无密钥限额按访客计算

    每月 1,000 次加载的无密钥额度现在按访客 IP 计算,覆盖所有网站上的所有无密钥组件,而不再是每个嵌入域名一个额度池。

  31. 变更

    恢复 “Powered by Bitculator” 链接

    每个组件底部的链接在 4 月 4 日被移除后现已恢复。它指向 bitculator.com 上对应的工具,且无法关闭。

  32. 变更

    纯 iframe 代码片段

    代码生成器生成的代码片段恢复为单纯的 <iframe>;4 月 3 日复制的代码片段还带有一个包装层、一个独立的 Powered-by 链接和一个自动调整大小的 <script>。组件内的页脚链接也在同一时间被移除,并于 5 月 2 日恢复。

  33. 新增

    每个工具页面都有嵌入代码生成器

    每个工具页面都新增了代码生成器:粘贴你的嵌入密钥,选择组件语言、布局模板和可见区块,并设置宽度、高度、圆角以及延迟加载或立即加载,代码片段和实时预览会同步更新。

  34. 新增

    visible 参数

    计算器和翻转器组件接受 ?visible=,即默认显示的区块 ID 的逗号分隔列表。访客自己保存在浏览器中的选择优先。

  35. 变更

    embed_key 参数与控制台地址

    请以 ?embed_key= 传递你的密钥;?api_key= 仍可作为别名使用。控制台已迁移至 /{locale}/user/developer/embed,新密钥的完整值只会在创建后立即显示一次。

  36. 修复

    组件可在其他网站上嵌入框架

    组件页面此前仍带有 X-Frame-Options: SAMEORIGIN 和 frame-ancestors 'self',因此浏览器拒绝在其他域名上显示它们。现在它们发送 frame-ancestors *,且不再发送 X-Frame-Options。

  37. 变更

    嵌入拥有自己的套餐

    3 月 22 日推出的套餐成为拥有独立结账流程的嵌入套餐,定价页面迁移至 /{locale}/pricing/embed。各项限制没有变化。

  38. 新增

    可拖放的区块与 layout 参数

    DCA、利润、利息、税务、贷款、质押和翻转器组件被拆分为多个区块,访客可以拖动、调整大小和对齐,排列会保存在其浏览器中,并附有“重置布局”按钮。?layout= 用于设置初始排列,例如 c(stats::cc,settings::cc),其中 c() 表示列,r() 表示行,区块写作 id:width:alignment。

  39. 新增

    密钥、域名、套餐与配额

    组件接受 URL 中的密钥,带密钥的加载必须来自控制台中注册的域名,否则会得到 403;无密钥加载仍会正常渲染。Free 每月允许 10,000 次加载、1 个域名和 2 个密钥,Starter 为 50,000 次、3 个和 5 个,Pro 为 500,000 次、10 个和 10 个。超出限额后,组件会显示用量上限页面(HTTP 429)。

  40. 移除

    移除转换器对比表

    转换器组件移除了对比表,因此 hideTable 自那以后不再产生任何效果。该参数仍会被接受。

  41. 新增

    高度消息与工具页面代码片段

    组件在高度变化时会向父窗口发送 {type: 'bitculator-embed-resize', height},以便宿主脚本调整 iframe 大小,并在准备就绪前显示加载占位。每个工具页面都新增了可复制的嵌入代码片段。

  42. 新增

    九个可嵌入组件

    正式上线:转换器(/{locale}/embed/converter/{from}/{to})、Zoom(/zoom/{slug})、市值翻转器(/flip/{entity1}/{entity2}),以及 /dca、/profit、/interest、/tax、/loan 和 /staking 计算器。每个组件都接受 ?compact=1 和 ?theme=dark,背景透明,标记为 noindex,并带有 “Powered by Bitculator” 链接。

获取通知

移除某个组件版本或下调限额,会在此处并通过邮件至少提前六个月公布 - 参见弃用政策。