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

REST Api中发送和立即检索响应数据的方法是什么[closed]

姜森
2023-03-14

想改进这个问题吗?更新问题,以便通过编辑这篇文章用事实和引用来回答。

我试图为我们的一个客户建立一个小的REST API,他希望有这样的API。这是我第一次读到那个话题。我们的大部分服务需要相当长的时间来完全处理客户订单。为此,客户端可以通过发布xml数据来创建资源,然后通过获取相应的资源来检索结果。那是非常直接的。

现在,尽管我们想要创建另一个服务,它通常会几乎立即评估结果,但我真的不知道如何用最佳实践来实现它。由于可以立即处理请求,因此我希望避免使用两个请求来创建和检索资源。这似乎不必要且费力。

另一方面,对于这个问题,似乎不存在一种单一的合适的HTTP请求方法,因为POST请求不应该用除了响应代码之外的任何东西来响应,而GET请求应该独立于它们的主体(今天似乎可以使用GET请求发送主体数据,然而这似乎是一种不好的做法,不应该影响响应。换句话说,服务器只允许使用包含在URL中的信息)。此外,我不能将数据作为GET-URL中的查询参数发送,因为数据包含非常敏感的信息——我们国家对该主题有非常严格的法律,我学会了非常小心。

实现这种响应工具的最佳实践是什么?REST API可能是错误的选择吗?

谢谢

共有1个答案

盖博简
2023-03-14

POST请求除了响应代码之外不应该有任何响应

这不太对。

如果一篇文章导致了一个创作,您应该使用

此外,POST响应可能包含表示所创建对象的主体:restful POST响应的“最佳”实践。

因此,POST方法就是您正在寻找的。它创建新资源并返回正文中新创建对象的表示形式。

如果您的服务在创建后会修改对象,则由您决定如何处理。如果修改时间很短,您可以等到对象被修改后再返回准备使用的对象。否则,您可以返回字段不完整的对象。两种方法都是RESTful。

 类似资料:
  • 我正在尝试找到一种异步的方式来立即返回客户端请求的响应。 我所需要的只是记录请求数据,调用新线程请求其他服务器上昂贵的操作(一些后端操作),并且无需等待它们的响应,立即返回200状态响应给客户端。 此时此刻,我正试图用完整的未来来做这件事,但我错过了一些东西。 总之,我得到了立即响应,但veryExpensiveOperations()方法似乎丢失了httpRequest值,这对我来说太糟糕了,因

  • 想改进这个问题吗?更新这个问题,这样就可以通过编辑这篇文章用事实和引用来回答。 我正在构建这个无头API,希望在找不到数据时返回404页以外的其他内容。 目前,我只回来没有找到。 我想知道什么是正确的JSON响应来回馈

  • 问题内容: 我整整一天都被这个问题困扰。我试图做的是使用Ajax从视图向控制器发送2个值。这是我的代码: 和我的hot_products控制器: 我不知道如何获取2个值,分别是start_time和end_time。请帮我。提前致谢。PS:我正在使用cakephp 2.3 问题答案: 为您提供控制器中的帖子数据。 更新 您的Ajax错误,

  • 问题内容: 我旁边有一个文本框和一个按钮。我想通过对webmethod的Jquery ajax调用发送文本框的内容,并获取相同的大写值并将其显示在警报中。到目前为止,我有此代码,但无法正常工作。 JAVASCRIPT: HTML: 网页方法: 问题答案: 根据您的评论,我了解您的问题尚未解决,所以只需尝试一下

  • 问题内容: 当我想在Firebase服务器上创建时间戳,然后将其检索到本地客户端时,我想知道如何使用Firebase的ServerValue.TIMESTAMP方法。 在Firebase指南中,只有javascript对此情况进行了更详细的描述,但是我很难确定如何将其转换为我的Android应用程序。 提前致谢! 问题答案: 设置为(包含),告诉Firebase用服务器的时间填充该字段。当该数据被

  • 你玩过Loren Brichter的游戏Letterpress吗?我很喜欢的Loren构建的一个关于界面的东西可能不是每个人都明显喜欢的:我喜欢每个按钮在用户按下时立即切换到一个不同的状态的样子。绝对不会延迟。这不是一个简单实现的行为,因为即使你可以将一个图片设为UIButton的UIControlStateHighlighted状态图,它也只会在点击发生后一小会启动,而且它不允许更进一步的代码来