- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在寻找使用 ALPS 的示例客户端实现(不是山,而是应用程序级配置文件语义)。
你!有吗?
我查看了相关的 RFC draft和讨论,但仍然可以弄清楚。
具体来说,我想知道我的客户应该如何知道描述符描述的内容,因为我的客户应该对 REST 原则要求的 REST API 的结构和语义一无所知?
作为人类,我知道带有 id
的描述符名为“用户”的标签可能会描述如何与用户交互,但如果我没有明确告诉他,我的客户如何知道?
我知道我可以插入某种关键字以显示在描述符中并告诉我的客户匹配适当的关键字,但这似乎不是正确的方法。
如果有人愿意阅读它,我很乐意提供一个更详细的示例。
最佳答案
我也是第一次探索 ALPS,我对 RFC 草案的理解也不是立竿见影的。
这是一个 slideshow (166 slides, so it's not possible to copy it all into this answer)来自 RFC 的作者,我认为它可以更好地理解 ALPS 所扮演的角色。
As a human I know that a
descriptor
with anid
tag called users is likely to describe how to interact with users but how is my client to know this without me telling him explicitly?
{
"alps" : {
"version" : "1.0",
"doc" : {
"href" : "http://example.org/samples/full/doc.html"
},
"descriptor" : [
{
"id" : "search",
"type" : "safe",
"doc" : {"value" :
"A search form with a two inputs"
},
"descriptor" : [
{
"id" : "value",
"name" : "search",
"type" : "descriptor",
"doc" : { "value" : "input for search" }
},
{ "href" : "#resultType" }
]
},
{
"id" : "resultType",
"type" : "descriptor",
"description" : {"value" : "results format"},
"ext" : [
{
"href" : "http://alps.io/ext/range",
"value" : "summary,detail"
}
]
}
]
}
}
HAL+Json
响应包含对搜索实体的引用。应用程序可以在这个 ALPS 文档中查找搜索实体是什么,并且可以编码如何表示它。也就是说,搜索是具有
name/value
的东西。配对(带有一个 id)和一个
href
.
href
指的是第二个
descriptor
带有 id resultType,它让应用程序知道搜索结果的预期格式。涉及的实际 URL 和数据将来自 REST 响应。
{
"version" : "1.0",
"descriptors" : [ {
"id" : "todo-representation",
"descriptors" : [ {
"name" : "description",
"doc" : {
"value" : "Details about the TODO item",
"format" : "TEXT"
},
"type" : "SEMANTIC"
}, {
"name" : "title",
"doc" : {
"value" : "Title for the TODO item",
"format" : "TEXT"
},
"type" : "SEMANTIC"
}, {
"name" : "id",
"type" : "SEMANTIC"
}, {
"name" : "completed",
"doc" : {
"value" : "Is it completed?",
"format" : "TEXT"
},
"type" : "SEMANTIC"
} ]
}, {
"id" : "create-todos",
"name" : "todos",
"type" : "UNSAFE",
"rt" : "#todo-representation"
}, {
"id" : "get-todos",
"name" : "todos",
"type" : "SAFE",
"rt" : "#todo-representation"
}, {
"id" : "delete-todo",
"name" : "todo",
"type" : "IDEMPOTENT",
"rt" : "#todo-representation"
} ]
}
关于rest - ALPS 示例实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31247629/
我正在寻找使用 ALPS 的示例客户端实现(不是山,而是应用程序级配置文件语义)。 你!有吗? 我查看了相关的 RFC draft和讨论,但仍然可以弄清楚。 具体来说,我想知道我的客户应该如何知道描述
我目前正在开展一个项目,该项目需要将描述现实生活场景的某些 OWL2 XML 文件“翻译”为 AnyLogic 模型的 ALP(XML 类型)格式,以便它们可以在应用程序中打开。这种翻译最终应该通过另
已结束。此问题正在寻求书籍、工具、软件库等的推荐。它不满足Stack Overflow guidelines 。目前不接受答案。 我们不允许提出寻求书籍、工具、软件库等推荐的问题。您可以编辑问题,以便
我已经阅读了很多关于如何正确设置微服务的文章,而且我一直对一些较新的概念很感兴趣,包括:HAL、ALPS 和 HAL 浏览器。我曾经记录过利用 Swagger UI 的事情,但是,我开始明白以 URL
我将 SDR(Spring Data Rest)与自定义 Controller 混合在一起,如定义在: https://docs.spring.io/spring-data/rest/docs/cur
我有一个关于 Spring hatoas/数据休息中的 ALPS 支持的问题。似乎只有在您拥有 Spring 数据休息存储库时才会公开 ALPS 元数据。所以我的问题是为什么只支持 spring 数据
我在使用“AlpsPS/2 ALPS GlidePoint”(HP zBook Studio G4)时遇到问题。它正在工作,但被视为鼠标设备,实际上导致我在“鼠标和触摸板”>“触摸板”中所做的所有设置
如何将 MongoRepository 扩展类中的新方法公开给生成的 REST API 并包含相同的 ALPS/HATEOAS 元数据、链接等。 我有常用的 Spring Data MongoDB 存
不仅仅是三星设备。我在这三个设备上遇到相同的异常:QMOBILE、TECNO、ALPS Fatal Exception: java.lang.NoClassDefFoundError: android
现在,我的 spring-data-rest ( spring-boot 1.4.3.RELEASE ) 提供的 Controller 的默认 Content-Type 是 application/h
我是一名优秀的程序员,十分优秀!