@aghanim-sdk/ 检查出局
在您的网页游戏中接受付款 阿加尼姆(英语:Aghanim) 取出 — 没有页空出, 没有服务器侧运行时间 .
📖 全向导 : docs.aghanim.com/checkout/javascript-sdk 页面存档备份,存于互联网档案馆
安装
npm install @aghanim-sdk/checkout
或通过脚本标记( 曝光) window.Aghanim:
<script src="https://cdn.jsdelivr.net/npm/@aghanim-sdk/checkout/dist/aghanim-checkout.global.js"></script>
快开始
import { Aghanim } from "@aghanim-sdk/checkout";
// Key from Dashboard → Integration → API keys.
const aghanim = Aghanim.init({ apiKey: "sdk_..." });
// As soon as your game knows who the player is;
// clearPlayerId() on sign-out.
aghanim.setPlayerId("player_1");
const order = await aghanim.orders.create({ items: [{ sku: "gems-100" }] });
const checkout = await aghanim.openCheckout(order);
checkout
.onPaid(() => showSuccessUI())
.onClosed(() => game.resume());
这个SDK创建的命令是可消耗的. paid 只是一个 UX 信号: 来自
item.add 或将未完成的清单排出靴子、恢复和之后 paid。 。 。 .
// Always grant first — consuming the same order twice fails.
for (const order of await aghanim.orders.unconsumedDetails()) {
grantToPlayer(order.items);
await aghanim.orders.consume(order.id);
}
已经创建命令服务器侧吗 ? 通过不透明 checkout_url 直接穿过 :
const checkout = await aghanim.openCheckout(checkoutUrlFromYourBackend);
没有后端开发
const aghanim = Aghanim.init({
apiKey: "sdk_mock",
mock: { scenario: "instant_success" },
});
假设情况(instant_success, (中文(简体) ), open_external, (中文(简体) ), three_ds, (中文(简体) ), failure, (中文(简体) ), load_error, (中文(简体) ),
poll_fallback, (中文(简体) ), unconsumed通过真实解析管道播放脚本事件. 见 examples/。 。 。 .
参考文献
- 演示文稿模式( E)
overlay, (中文(简体) ),embedded, (中文(简体) ),external, (中文(简体) ),auto),事件,选项,授予: docs.aghanim.com/checkout/javascript-sdk 页面存档备份,存于互联网档案馆 - 仅线级类型 :
import type { OrderRead } from "@aghanim-sdk/checkout/protocol" - 常绿浏览器(ES2020),零运行时间依赖.