首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在HATEOAS Api的响应中,发送成功信息的理想方法是什么?

在HATEOAS Api的响应中,发送成功信息的理想方法是什么?
EN

Software Engineering用户
提问于 2019-10-09 11:07:55
回答 4查看 3.4K关注 0票数 3

我在rest应用程序中使用HATEOAS架构,并希望发送国际化的成功消息,该消息将由客户直接使用。我知道我们可以在响应中添加一个键,但是想知道什么是理想的架构方式。

例如,假设我希望发送在下面的响应中成功创建的消息部门。我该怎么做?

Uri:http://api.domain.com/management/departments

类型:员额

现有答复:

代码语言:javascript
复制
{
    "departmentId": 10,
    "departmentName": "Administration",
    "locationId": 1700,
    "managerId": 200,
    "links": [
        {
            "href": "10/employees",
            "rel": "employees",
            "type" : "GET"
        }
    ]
}
EN

回答 4

Software Engineering用户

回答已采纳

发布于 2019-10-10 07:56:44

请记住,您不是从服务器向客户端发送消息。你们在分享资源。表示你在某个地方拥有的资源。更具体地说,他们的地位。它们的投影。客户端正在“询问”您在服务器中拥有的内容,而服务器正在共享服务器的时态表示。

服务器执行响应(200、201等)并且客户端获得表示的事实对您来说是足够的确认(消息)。因此,如果客户端应用程序处理20倍,则可以显示所需的消息。服务器不关心客户端是否得到响应。

关于“通信”过程的结果,将其留给协议及其语义学处理。根据请求方法、标头等使用HTTP状态代码、标头和响应消息。

为什么?

因为HTTP请求和响应的主要使用者是HTTP客户端和HTTP服务器,它们将根据这些内容做出反应和行为。如果您不在通信过程中引入噪声并尊重协议语义,那么您就可以从HATEOAS中得到最大的好处。

票数 3
EN

Software Engineering用户

发布于 2019-10-09 12:35:20

在HATEOAS Api的响应中,发送成功信息的理想方法是什么?

你怎么才能在网站上做到这一点?

您可以在HTTP响应的正文中发送消息。您将使用一些标准化的媒体类型(如HTML),它允许您向客户端阐明消息的语义。您可能还会在响应链接中包含到域应用程序协议中的其他步骤。

元数据是响应的标题和状态行,将以标准化的形式提供有关响应的通用组件(如浏览器)信息。

当你在机器和机器之间工作的时候,模式是一样的--唯一真正的区别是机器没有(通常)人类的适应性。因此,您需要指定消息模式,以便客户端知道在响应中查找它需要的信息的位置。

票数 1
EN

Software Engineering用户

发布于 2019-10-10 05:35:23

如果服务器创建了对象,那么它应该发送一个201 created状态代码和一个指向新创建对象的Location头,例如http://api.domain.com/management/departments/1

客户端应用程序可以看到201 created状态,然后可以用用户选择的语言显示适当的消息。像这样的国际化发生在客户端应用程序上。换句话说,在服务器完成请求之后,客户机应该知道下一步该做什么。

票数 1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/399493

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档