启用自适应内容

选择一种身份验证方法以将用户数据传递给 GitBook。

要开始为读者自定义文档体验,您需要启用自适应内容并决定如何将访客数据传递给 GitBook。这使得您网站的内容可以根据查看者动态调整。

启用自适应内容

在将用户数据传递给 GitBook 之前,您需要将站点配置为使用自适应内容。

前往您的 站点设置,并启用 自适应内容 在站点的受众设置中。一旦启用,您将获得生成的“访客令牌签名密钥”,在继续自适应内容设置时需要该密钥。

A GitBook screenshot showing the enable adaptive content toggle
在站点的设置中启用自适应内容

设置您的访客模式(schema)

启用自适应内容后,您需要为在用户访问您的站点时期望 GitBook 接收的声明类型定义一个模式。

访客模式应反映这些声明在发送给 GitBook 时的结构。

例如,如果您期望访客可能是产品的测试用户,您可以将访客模式设置为类似:

{
  "type": "object",
  "properties": {
    "isBetaUser": {
      "type": "boolean",
      "description": "访客是否为 Beta 用户。"
    }
  },
  "additionalProperties": false
}

这还会在在 条件编辑器中配置您的声明时帮助您使用自动完成。访客模式仅支持以下类型:

读取以字符串形式传递的声明。

GitBook 接受动态字符串,这意味着您可以动态传递字符串数据——例如用户姓名、开发者令牌等。

字符串还可以包含一个 可选的枚举 键,允许您将接收到的 GitBook 数据限制为其一组设定值之一。

{
  "type": "object",
  "properties": {
    "language": {
          "type": "string",
          "description": "访客的语言",
          // 可选的枚举属性
          "enum": [
            "en",
            "fr",
            "it"
          ]
  },
  "additionalProperties": false
}

设置未签名的声明

未签名的声明是一种特定类型的声明,用于标识可能未由客户端应用签名的通过途径的声明。如果您通过 URL 参数、未签名的 Cookie 和功能标志传递声明,则需要在访客模式中将这些声明设置为 未签名的

如果您打算处理未签名的声明,则需要在模式中在与签名声明并列的 “unsigned” 属性下声明您期望的声明。

{
  "type": "object",
  "properties": {
    "isBetaUser": {
      "type": "boolean",
      "description": "访客是否为 Beta 用户。"
    },
    // 添加未签名的声明
    "unsigned": {
      "type": "object",
      "description": "站点访客的未签名声明。",
      "properties": {
        "language": {
          "type": "string",
          "description": "访客的语言",
          // 可选的枚举属性
          "enum": [
            "en",
            "fr",
            "it"
          ]
        }
      },
      "additionalProperties": false
    }
  },
  "additionalProperties": false
}

将访客数据传递给 GitBook

GitBook 提供了不同的方式来传递访客数据以使您站点的内容自适应。定义模式后,您需要决定如何将访客数据传递给 GitBook。

最后更新于

这有帮助吗?