创建 Embed Token

为 Trading Widget partner-token 模式签发短期 embedToken。

以 Markdown 格式查看

SDK 调用

Embed Token 必须由 Partner 后端在校验用户登录态之后创建。浏览器只调用 Partner 自己的接口,Partner 后端再通过 Agent SDK 调用 6MM。

1CreateEmbedTokenResponse resp = client.createEmbedToken(
2 CreateEmbedTokenRequest.of("agent-user-001", "tw_abc123")
3 .withSymbol("ETHUSDT"));
4
5System.out.println(resp.embedToken);
6System.out.println(resp.expireAt);

一次性凭据

embedToken 是短期一次性 token,不能放到 URL query 中。

后端接口示例

1@PostMapping("/api/trading/embed-token")
2public EmbedTokenView createEmbedToken(@RequestBody EmbedTokenRequest request,
3 PartnerSession session) {
4 String agentUserId = session.getAgentUserId();
5 CreateEmbedTokenResponse resp = agentClient.createEmbedToken(
6 CreateEmbedTokenRequest.of(agentUserId, request.getChannelId())
7 .withSymbol(request.getSymbol()));
8
9 return new EmbedTokenView(resp.embedToken, resp.expireAt, request.getChannelId());
10}

只向前端返回 Trading Widget tokenProvider 需要的字段。不要返回 apiSecret、原始签名字段或内部服务配置。

失败处理

情况建议处理
用户会话不存在或已过期Partner 接口返回 401,并要求用户重新登录。
Agent 用户尚未绑定先绑定用户,再重试创建 token。
6MM 返回临时错误向前端返回可重试错误,并记录 requestId 便于支持排查。
channelId 与 Widget 实例不匹配拒绝请求并重新创建 Widget 会话。