0

我配置了 Spring Hateoas 的 Spring Data Rest,特别是 Spring-Data-Mongo。奇迹般有效。

问题是,实体位于 URI 的根目录。例如,对于实体 Person,并假设我的 servlet 上下文是 abc,它将是http://localhost:8080/abc/person

我想有一个“子URI”来处理这些实体。例如,http://localhost:8080/abc/rest/personhttp://localhost:8080/abc/api/person

我查看了文档、手册、教程,并搜索了互联网。我似乎找不到解决方案。

有人知道该怎么做吗?

此外,还有几个场景: 1. 一个实体是否可以有多个 URI?例如,.../person 和 .../people 指向同一个实体。2. 如果我想对一个实体使用相同的 URI,对于一个客户端可以访问某些方法,而另一个客户端具有不同的访问权限,最佳实践是什么?例如,一个客户端只能读取,而另一个客户端可以读/写。

最后,是否有一个使用 API 密钥实现 Spring Security 的库?

提前致谢,

4

1 回答 1

0

to put all rest api's under a sub path use the RepositoryRestMvcConfigurator

package se.digiplant.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.data.rest.core.config.RepositoryRestConfiguration;
import org.springframework.data.rest.webmvc.config.RepositoryRestMvcConfiguration;

import java.net.URI;

@Configuration
public class RestMvcConfig extends RepositoryRestMvcConfiguration {

    private static final URI BASE_URI = URI.create("/api");

    @Override
    protected void configureRepositoryRestConfiguration(RepositoryRestConfiguration config) {
        super.configureRepositoryRestConfiguration(config);
        config.setBaseUri(BASE_URI);
    }
}
于 2014-09-05T07:29:33.630 回答