hateoas相关内容
使用 spring data REST 我已经公开了一个 ProjectRepository,它支持列出项目并对其执行 CRUD 操作.当我转到 http://localhost:8080/projects/ 时,我得到了我期望的项目列表. 我要做的是向项目集合的 JSON 响应的 _links 部分添加自定义操作. 例如,我希望对 http://localhost:8080/proj
..
我有一个 JPA 树结构 @Entity公共类文档{@ID@GeneratedValue(策略 = GenerationType.AUTO)私有整数 ID;私人字符串文本;@ManyToOne@JoinColumn(name = "父")文件父;@OneToMany(mappedBy = "parent", fetch = FetchType.EAGER)设置孩子们;(getter 和 sett
..
我有 Spring Data Rest 和 Hateoas 作为我的支持.它位于代理后面. 后端网址:backend.com 代理网址:proxy.com 当我查询代理网址时,例如http://proxy.com/items/1,我收到一个带有 href 链接的响应,其中包含域 backend.com.我需要域为 proxy.com. 解决方案 确保您的代理将 X-For
..
我目前正在为一个项目创建 REST-API,并且一直在阅读有关最佳实践的文章.许多人似乎反对 DTO,只是简单地公开域模型,而其他人似乎认为 DTO(或用户模型或任何你想称呼的)是不好的做法.就个人而言,我认为这篇文章很有道理. 然而,我也理解 DTO 的缺点,包括所有额外的映射代码、可能与其 DTO 对应物 100% 相同的域模型等等. 我们的 API 主要是为了其他客户端可以使用数
..
我正在努力思考如何(以及是否要)在我的 api 中实现 HATEOAS.我喜欢只为客户提供适合当前情况的行动的概念之一.但是我不确定我是否正确地实施了这个想法. 假设我有一个资源类型order,其状态可以更改,它可以有不同的状态(processing、accepted、拒绝、过期、成功).然后我应该创建以下 json 对象: {...“链接":{"accept": "http://exam
..
致力于支持多种超媒体类型和身份验证的 REST 框架.我不确定如何处理的一件事是资源中的敏感值.例如,如果我要在 API 中包含用户管理,我需要一种向客户端公开密码字段的方法,但不显示实际的密码哈希.信用卡也是一样.如果我不这样做,它将违反超媒体约束,因为该领域的知识将变得带外,并使我的 HATEOAS 损坏. 这是我遇到的一个实际用例: 该项目是一个展示他们的人员目录,以便其他人可以
..
我正在使用 apiary 创建一些 API,所以使用的语言是 JSON. 假设我需要代表这个资源: {“身份证":9,“名称":“测试",“customer_id":12,“用户 ID":1,“store_id":3,"notes" : "Lorem ipsum 示例长文本"} 通过 ID(12、1、3)引用其他资源是否正确,或者我应该指定这些资源(即/customers/12、/use
..
我们有分类商品网站,我们没有登录但用户可以查看其他用户列出的产品.要查看其他用户的详细信息,他们必须提供他们的联系方式.为了验证用户是否提供了正确的手机号码,我们将 OTP 代码发送回该号码.API 流程如下所示: //当用户填写表单以获取特定股票的卖家详细信息时将触发 API(这需要“stockId"和“mobile"作为输入): POST/api/lead/ {“stockId"
..
我正在按照 HATEOAS/REST 原则设计 API.但我不确定这个基本点:资源识别. 假设这个网址:/images它公开了用户上传的所有图像(给这个用户). 假设我使用 oauth 访问令牌进行身份验证,/images 的内容将根据 Authorization 标头而有所不同. 这是否打破了资源概念的识别? 解决方案 没有.资源不必是静态的才能保持宁静.想象一个提供时
..
我已经搜索了很多,但我找不到这个问题的好答案.作为 HATEOAS 爱好者,我认为这个标题非常适合: 范围:item=1-20/100 在 HTTP 规范中,我不明白一些“矛盾":范围单位可以接受“other-range-unit"... 范围单位 = 字节单位 |其他范围单位字节单位=“字节"其他范围单位 = 令牌 ...但规范是后来明确的: HTTP/1.1 定义的唯一范围单
..
我正在使用 apiary 创建一些 API,所以使用的语言是 JSON. 假设我需要代表这个资源: {“身份证":9,“名称":“测试",“customer_id":12,“用户 ID":1,“store_id":3,"notes" : "Lorem ipsum 示例长文本"} 通过 ID(12、1、3)引用其他资源是否正确,或者我应该指定这些资源(即/customers/12、/use
..
正如每个人可能已经注意到的那样,在野外有很多假的/基本的 REST-API(它们实现了一个 HTTP-API 并将其称为 REST,而不遵循超文本作为应用程序状态的引擎要求),这导致了 Roy T. Fielding 的著名咆哮,第一个指定 REST 范式的人). 我一直无法找到真正超文本驱动的 REST 实现的任何实际示例,以及用于状态转换的关联的特定于应用程序的媒体类型定义. 是否
..
制作一个简单的 RestController @RestController公共类控制器@值类 MyData {整数值;}@GetMapping(value = "/datas", 产生 = MediaTypes.HAL_JSON_VALUE)public PagedResources>getMyData(PagedResourcesAssembler 汇编程序
..
使用 spring 数据 REST 我公开了一个 ProjectRepository,它支持列出项目并对它们执行 CRUD 操作.当我转到 http://localhost:8080/projects/ 时,我得到了预期的项目列表. 我想要做的是向项目集合的 JSON 响应的 _links 部分添加自定义操作. 例如,我希望对 http://localhost:8080/project
..
我正在尝试使用 Java Spring 构建 RESTful 服务架构,并为所有这些服务构建网关服务.为了实现后者,我需要为其他服务实现一个客户端,我和我的同事试图围绕 HATEOAS 原则设计,通过 spring-hateoas 模块提供相关资源的链接. 假设我有一个在本地主机上运行的服务,侦听 8080 端口,它通过 /resources 上的 GET 操作返回资源集合.例如: {“_
..
假设我有一个 RESTful HATEOAS API,它有 /posts 端点,它列出了带有查询快捷方式 /posts/new 的帖子.如何查询 API 以发现 /posts/new? 我的想法: 1) 查询 /posts 并从 _links 属性获取链接(并且列出的实体是必要的开销): GET/posts{“文档":[...]“_links":{"new": { "rel": "p
..
我们有分类商品网站,我们没有登录但用户可以查看其他用户列出的产品.要查看其他用户的详细信息,他们必须提供他们的联系方式.为了验证用户是否提供了正确的手机号码,我们将 OTP 代码发送回该号码.API 流程如下所示: 1)//当用户填写表单以获取特定股票的卖家详细信息时将触发 API(这需要“stockId"和“mobile"作为输入): POST/api/lead/{“股票编号":123,
..
我在 REST 上阅读的所有文章和书籍都重复了在超媒体响应中添加“自我"rel 链接的重要性,但它们都对原因和用例进行了阐述. 为什么要添加自链接,它有什么用处? 解决方案 主要原因是客户端(甚至一些服务器)不将表示的位置与表示一起存储.例如,如果您 wget http://.../foo.json,则表示将保存到磁盘,但获取它的 URI 不会.如果表示中没有嵌入“self"链接,这
..
编辑 14/08/14 13:29 我的下一个结论是,我的@RepositoryRestResource CrudRepository 生成的 hal+json 格式不正确. 教程(http://spring.io/guides/gs/accessing-data-rest/) 将超媒体 Rest JPA 实体的输出显示为:(请注意没有“rel"元素,并且“links"不是数组) {
..
我希望我的 API 是 RESTful 假设我已经使用 POST 启动了一个长时间运行的任务,现在想要了解进度? 执行此操作的惯用 REST 方法是什么? 每 10 秒用 GET 轮询一次? 解决方案 对您的回复 POST/new/long/running/task 应该包含一个 Location 标头.该标头将指向客户端可以点击以找出任务状态的端点.我建议您的回复类
..