0

在此示例中,wagtail 被部署到 cms.example.com 并作为无头 CMS 管理 foo.example.com 和 bar.example.com 的内容。

访问 cms.example.com/api/pages/ 上的 Pages API 时,仅返回当前活动站点 (cms.example.com) 的页面。

要获取“foo”和“bar”站点的内容,cms.example.com/api/ 还需要以 foo.example.com/api/ 和 bar.example.com/api/ 的形式提供(例如,使用代理)。

是否可以在无需通过某些代理的情况下从其他站点查询页面的 API?

4

1 回答 1

2

Wagtail 的 API 是 Django Rest Framework 之上的一个相当薄的层,您应该感到鼓励自定义它或滚动您自己的。

当前站点过滤页面发生PagesAPIEndpoint.get_querysetmethod中,禁用该行为的最简单方法是创建子类PagesAPIEndpoint以覆盖该方法,并在 urls.py 中注册您的自定义子类来代替原始子类。

于 2019-05-25T10:24:20.310 回答