是否可以将 admin-on-rest 指向多个端点?

is it possible to point admin-on-rest at multiple endpoints?

示例显示单个端点,例如:

render(
    <Admin restClient={simpleRestClient('http://localhost:3000')}>
        <Resource name="posts" list={PostList} edit={PostEdit} create={PostCreate} icon={PostIcon}/>
    </Admin>,
    document.getElementById('root')
);

是否有呈现跨越多个 "root" 端点的 restful 资源的策略,例如:

在单个 admin-on-rest 实例中?

我想它需要看起来像:

render(
    <Admin>
        <Resource name="widgets" list={WidgetList} restClient={restClientOne('http://host-1')/>
        <Resource name="whatsits" list={WhatsitList} restClient={restClientTwo('http://host-2')/>
    </Admin>,
    document.getElementById('root')
);

您可以使用@gildas 在评论中提到的包在资源级别执行此操作。

您可以编写自己的 REST 客户端来查看被调用的资源并访问不同的 API。

下面的

Link 应该可以让您深入了解 REST 客户端的工作原理。虽然这是一个休息客户端包装器的例子。

https://marmelab.com/admin-on-rest/RestClients.html#decorating-your-rest-client-example-of-file-upload

你的REST客户端需要做的是。

const RESTclient = requestHandler => (type, resource, params) => {

if (resource == 'Resource1') {
    const url = API1 + .....
} else if (resource == 'Resource2)
    const url = API2 + .....
}

您可以查看任何社区 Rest 客户端的代码,了解他们是如何发出请求的。以上 link 是 aor docs 中对我来说最好的资源。