与服务集成
最后更新:2026年6月22日
在上一步中,您已经创建了文章数据。现在到了将这些数据展示给真实用户的时候。WEEGLOO 负责存储和管理数据,因此通过哪种服务来展示这些数据完全由创建者决定。您可以做成 Web 应用程序,也可以扩展为移动应用,或者两者兼有。关键在于,您可以通过 WEEGLOO 提供的 RESTful API 获取数据,并按照自己想要的形式使用它。
在本示例中,我们将把 Tech Blog 做成一个网站。让访问者能够通过 Web 浏览器查看文章,而我们来构建这个界面(Front-end)。这样制作出的静态 Web 文件可以通过 WEEGLOO 的 Web Hosting 功能进行部署。
发放只读令牌
要调用 WEEGLOO API,需要用于认证的 Access Token。在本示例中,我们使用专门用于向访问者展示文章的只读令牌 Delivery Access Token,以及用于传递已发布内容的 API:CDA(Content Delivery API)。
在创建令牌之前,需要先用 SpaceRole 确定该令牌能够访问哪些数据。出于安全考虑,我们创建一个仅对前面创建的 Article Content Type 授予读取权限的 SpaceRole。这样一来,令牌除了读取文章之外什么都做不了。
- 在左侧菜单中点击 Roles & Permissions。
- 点击 Create 并输入角色名称。例如:
Article Read-Only。 - 仅对
Article的 Content 和 Content Type 允许 Read。不要开启其他权限。 - 点击 Save 保存。

关于 SpaceRole 设置的详细内容,请参阅角色与权限。
现在创建一个拥有该 SpaceRole 的 Delivery Access Token。
- 在左侧菜单中点击 Delivery Access Tokens。
- 点击 Create 并输入令牌名称。例如:
Tech Blog Web。 - 在 Role 中选择前面创建的
Article Read-Only,然后点击 Save 保存。
请妥善保管发放的令牌值,它只会显示一次。由于该值可能会暴露到访问者的浏览器中,因此像上面那样用只读的 SpaceRole 来收窄它的权限范围非常重要。

获取文章数据
现在我们实际调用获取文章的 API。认证通过 Authorization 头以 Bearer 方式进行,在其中填入前面创建的 Delivery Access Token 值。
Authorization: Bearer <Delivery Access Token>| API | Method | Path | Params |
|---|---|---|---|
| CDA | GET | /v1/spaces/{spaceId}/content-types/{contentTypeId}/contents | ?order=-sys.createdAt,sys.id |
该 API 会获取特定 Space 中的 Article Content 列表。我们通过 order 选项设置了按最新顺序排序,使用 include 选项还可以一并获取关联的数据。
第一次调用时可能不会返回任何数据。这是因为您创建的 Content 尚未发布(Publish)。为了区分正在编辑的数据和要展示给访问者的数据,WEEGLOO 设置了发布这一步骤。将 Content 发布后再次调用,就能查询到文章了。
{
"sys": { "type": "TotalPageResponse" },
"limit": 15,
"totalCount": 1,
"items": [
{
"sys": {
"id": "3trmXRkRjC1x4J9h2om4Qh41o7sejd",
"type": "Content",
"space": { "sys": { "id": "ep8f7qJY", "type": "Refer", "targetType": "Space" } },
"contentType": { "sys": { "id": "3trmXRkRjC1x4J9h2om4QZv0jC58Nv", "type": "Refer", "targetType": "ContentType" } },
"createdAt": "2026-06-21T15:38:22.630Z",
"updatedAt": "2026-06-21T15:38:22.630Z",
"revision": 1
},
"fields": {
"title": "Building a Headless Blog with WEEGLOO",
"body": "WEEGLOO lets you define your content structure once and deliver it anywhere through a REST API. In this post we model an Article, write our first entry, and fetch it from a web app, with no backend server to build or maintain.",
"category": "Web"
}
}
],
"links": {
"self": "/v1/spaces/ep8f7qJY/content-types/3trmXRkRjC1x4J9h2om4QZv0jC58Nv/contents?order=-sys.createdAt,sys.id"
}
}关于该 API 的详细用法和选项,请参阅 API 参考。
多语言支持
更进一步,我们将文章以多种语言提供。WEEGLOO 提供 Locale 功能,让您可以用多种语言管理同一份内容。
首先在 Locale 设置中添加新语言。这里我们添加 Korean,并将在没有值时改为显示的 Fallback 语言设为 English。Fallback 是指当某种语言没有值时,用来代替显示的语言。
接下来转到前面创建的 Content,您会看到每个 Field 都新增了用于输入各语言对应值的输入框。这样就能按语言分别管理同一篇文章的内容。不过,要使用此功能,需要事先在 Content Type 中为相应的 Field 开启多语言选项。

关于多语言支持的详细内容,请参阅多语言管理。
这样,您就能用一套数据结构构建出支持多种语言的 Web 服务。现在您已经完成了基础的内容查询和多语言处理,下一步我们将了解多人协作创作和管理内容的协作功能。
- 开始协作:邀请多人加入 Space,分配不同角色,共同管理内容。
