当前位置: 首页 > 知识库问答 >
问题:

使用@RepositoryRestResource时如何公开有限的方法?

仲浩旷
2023-03-14

我想限制我的REST方法,这样用户就可以只使用GET和POST。但是,@RepositoryRestResource提供了包括DELETE和PUT在内的所有方法的说明。所以我只是想知道如何限制它?

@RestController允许编写我们自己的方法,但是有很多相关的样板文件。

我一直在查看文档和github spring项目中的相关信息,但是没有找到任何相关信息。

有什么建议/帮助吗?谢谢大家!

共有1个答案

岳嘉石
2023-03-14

编辑:最佳解决方案是隐藏某些存储库,查询方法或字段

根据Spring Data Commons,您可以微调您的存储库,以选择性地公开您想要的方法。

注意:我自己还没有测试过,看看Spring Data Rest是否确实支持上述建议的存储库的微调。

另一种看待这个问题的方法是使用Spring Security性来保护具有角色的方法,以便只有授权用户才能调用某些方法。

< s >另请参考此线程实现/覆盖MongoRepository Keep HATEOAS格式

 类似资料:
  • 我已经创建了一个 除了一些其他的: 在我的aplication.properties 而这是的入口点: 仍然,我没有看到下的endpointhttps://localhost:8443/v3/api-docs.只有那些来自的endpoint: 我使用的是Spring Boot。 这是我使用的整个pom.xml: 我已经尝试按照这里的建议添加依赖项 但它仍然不起作用。 知道这是什么原因吗?

  • 我一直在研究如何将Spring与REST结合使用的各种示例。我们的最终目标是Spring设置 我已经看到了两种不同的方法,用于在Spring中渲染REST > 在控制器中通过 通过存储库中的< code > @ RepositoryRestResource 我正在努力寻找的是,为什么你会使用一个而不是另一个。当尝试实施时,哪一个是最好的? 我们的数据库后端是Neo4j。

  • 问题内容: 使用Play Framework,我通过GSON序列化了模型。我指定哪些字段是公开的,哪些不是。 这很好用,但我也想使用@expose方法。当然,这太简单了。 我该怎么做 ? 谢谢你的帮助 ! 问题答案: 我遇到的最好的解决方案是制作一个专用的序列化器: 并在我看来像这样使用它: 但是为某个方法工作会很棒:它将避免使序列化器仅用于显示方法!

  • 问题内容: 我有一个代表IFrame的原型。该原型具有一个名为GoToUrl(…)的函数,可在IFrame中打开给定的url。 我的问题是:如何创建“ InternalDOM”属性并使该属性引用内部IFrame的“窗口”对象(根DOM对象)?通过以下方式:如果我的IFrame公开了一个在其“窗口”对象中包含对象X的页面,我可以这样做: 任何帮助,将不胜感激。 PS:我会接受不一定与jQuery相关

  • 问题内容: 我想使用Spring Rest界面公开所有ID。 我知道默认情况下,这样的ID不会通过rest接口公开: 我知道我可以使用它来公开ID : 但是,有没有一种简便的方法可以在不手动维护此列表的情况下公开所有ID ? 问题答案: 当前,SDR无法提供此功能。SDR Jira跟踪器上的此问题说明了为什么无法(也许不应该)的原因。 从根本上说,由于ID已包含在响应的链接中,因此您无需将ID 公

  • 我创建了一个docker镜像(java Web应用程序),创建了一个包含1个主节点和1个工作节点的kubernetes集群,创建了一个部署和一个服务。所有的资源似乎都运行良好,因为我已经通过“kubectl描述资源资源名”进行了检查。最后,我使用了入口来公开集群之外的服务。入口资源似乎工作正常,因为在描述入口对象时没有错误。但是,在从另一台机器访问浏览器上的主机时,我得到了“您的连接不是私有的”错