跳到主要内容

How to get a user's plan and status in Spaces

在 Space 的 iframe 内部,你可以检测用户在主站上是否已登录,以及他们是否拥有 PRO 订阅,或者其所属的某个组织是否具有付费订阅。

window.addEventListener("message", (event) => {
if (event.data.type === "USER_PLAN") {
console.log("plan", event.data.plan);
}
})

window.parent.postMessage({
type: "USER_PLAN_REQUEST"
}, "https://huggingface.co");

event.data.plan 的类型结构如下:

{
user: "anonymous",
org: undefined
} | {
user: "pro" | "free",
org: undefined | "team" | "enterprise" | "plus" | "academia"
}

通过上述方式,你既可以获得用户的登录状态(未登录时为 "anonymous"),也可以获知其当前的 订阅计划(plan)

示例