将整数列表传递给 GET REST API

2024-03-16

我想从前端的数据库中获取实体列表。 所以我在 Spring MVC 中编写了 POST REST HTTP 调用。

但我读过 HTTP 文档,其中说每当您必须从数据库检索数据时,更喜欢 GET 调用。 那么,是否有任何我可以将 Angular JS 的 POST 调用替换为 GET 调用并传递整数列表。 但是,GET HTTP 有很多缺点,例如:URL 的长度有限。考虑到我们必须从数据库中获取 1000 个实体的情况。

请建议我获取实体的可能方法或在 Spring MVC 中编写 GET REST API 来获取整数列表(指实体的 ID)。

例如:假设图书表中有 100 本书,但我只想要几本书,比如 id:5,65,42,10,53,87,34,23。 这就是为什么我在 POST 调用的整数列表中传递这个 Id 列表。

目前卡在如何将其转换为 GET 调用。简而言之,如何通过 GET REST 调用传递整数列表。


我更喜欢通过 HTTP 路径变量来解决您的问题,因为REST https://en.wikipedia.org/wiki/Representational_state_transfer#Applied_to_web_services意识形态在资源名称之后传递资源 ID 'http://../资源/id http://../resource/id' 和 HTTP 参数用于过滤。

通过HTTP参数

如果您需要通过 HTTP 参数传递您的 id,请参阅下面的示例:

这是您的 Spring MVC 控制器方法:

@RequestMapping(value = "/books", params = "ids", method = RequestMethod.GET)
@ResponseBody
Object getBooksById_params(@RequestParam List<Integer> ids) {
    return "ids=" + ids.toString();
}

您可以使用以下变体拨打电话:

  1. http://服务器:端口/ctx/books?ids=5,65,42 http://server:port/ctx/books?ids=5,65,42

另请看一下这个讨论:https://stackoverflow.com/a/9547490/1881761 https://stackoverflow.com/a/9547490/1881761


通过HTTP路径变量

您也可以通过路径变量传递您的 id,请参阅下面的示例:

@RequestMapping(value = "/books/{ids}", method = RequestMethod.GET)
@ResponseBody
Object getBooksById_pathVariable(@PathVariable List<Integer> ids) {
    return "ids=" + ids.toString();
}

你的电话将如下所示:http://服务器:端口/ctx/books/5,65,42 http://server:port/ctx/books/5,65,42


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将整数列表传递给 GET REST API 的相关文章

  • 在 Spring 中为 @Pathvariable 添加类级别验证

    在发布这个问题之前 我已经做了很多研究并尝试了很多可用的解决方案 这是我陷入的棘手情况 我有一个 Spring 控制器 它有多个请求映射 它们都有 PathVariables 控制器如下所示 Controller EnableWebMvc
  • 无法验证 Spring Security 中 url 模式的角色

    我正在使用 spring security 3 1 7 RELEASE 和 spring 3 2 13 RELEASE 我的 spring security xml 中有如下条目
  • 我们如何使用 thymeleaf 绑定对象列表的列表

    我有一个表单 用户可以在其中添加任意数量的内容表对象这也可以包含他想要的列对象 就像在 SQL 中构建表一样 我尝试了下面的代码 但没有任何效果 并且当我尝试绑定两个列表时 表单不再出现 控制器 ModelAttribute page pu
  • Spring @ContextConfiguration

    我正在运行下一个测试 import static org junit Assert assertEquals import org junit Test import org junit runner RunWith import org
  • 如何在Spring中配置@Valid上的直接字段访问?

    我怎么知道spring web无需使用 getter setter 即可验证我的 dto PostMapping path test public void test Valid RequestBody WebDTO dto public
  • 在java中轮询Http服务器(重复发送http get请求)

    当对其进行 REST 调用时 我的 Web 服务器会发送一些信息 我想不断轮询该服务器 间隔5秒后重复发送HTTP GET请求 以检查返回的信息是否有任何变化 做到这一点最有效的方法是什么 您能提供一些代码示例吗 请注意 我只想开发客户端代
  • 动态创建和下载Doc文件

    因此 我尝试动态创建 doc 文件并让用户在单击按钮时下载该文件 这些是我找到的用于下载文件的标头 header Content Description File Transfer header Content Type applicati
  • 轻松的反应

    我有一个与这里描述的类似的案例 动态更改RESTEasy服务返回类型 https stackoverflow com questions 3786781 dynamically change resteasy service return
  • 如何在 Java Spring 中模拟 RestTemplate?

    public class ServiceTest Mock RestTemplate restTemplate new RestTemplate InjectMocks Service service new Service Respons
  • Rails、REST 架构和 HTML 5:带有预检请求的跨域请求

    在致力于使我们的网站 HTML 5 友好的项目时 我们渴望采用跨域请求的新方法 不再通过隐藏的 iframe 发布 使用访问控制 http www w3 org TR access control 根据规范 我们开始设置一些测试来验证各种浏
  • 如何在url请求中发送数组

    我的要求如下 我想给出演员姓名 开始日期 结束日期并获取他在该时期出演的所有电影 因此 我的服务请求是这样的 http localhost 8080 MovieDB GetJson name Actor startDate 20120101
  • Spring Security 自定义过滤器

    我想自定义 Spring security 3 0 5 并将登录 URL 更改为 login 而不是 j spring security check 我需要做的是允许登录 目录并保护 admin report html 页面 首先 我使用教
  • 添加对共享类的多个 WCF 服务的服务引用

    我正在尝试将我的 WCF Web 服务拆分为几个服务 而不是一个巨大的服务 但是 Visual Studio Silverlight 客户端 复制了两个服务共享的公共类 这是一个简单的例子来说明我的问题 在此示例中 有两个服务 两者都返回类
  • 使用嵌套的 hashmap 参数发送 volley 请求

    我正在使用 android volley 框架向我的服务器发送 jsonobject 请求 get 请求工作正常 现在我想发送一个带有请求参数的 post 请求 该请求参数是嵌套的 hashmap 我重写 getparams 方法 但它期望
  • 最适合“正在进行的作业”的 HTTP 状态代码

    向客户端提供的最合适的 HTTP 状态代码是什么 表示 您的请求很好 但仍在进行中 请稍后在完全相同的位置回来查看 例如 假设客户端提交初始请求以启动繁重的查询 服务器立即返回一个 URL 客户端可以定期轮询该 URL 以获取结果 如果客户
  • Resteasy 可以查看 JAX-RS 方法的参数类型吗?

    我们使用 Resteasy 3 0 9 作为 JAX RS Web 服务 最近切换到 3 0 19 我们开始看到很多RESTEASY002142 Multiple resource methods match request警告 例如 我们
  • Django模型更新或创建具有唯一约束的对象

    有一个模型 class Proxy models Model host models CharField max length 100 port models CharField max length 10 login models Cha
  • Django REST Framework:何时创建超链接资源以及何时创建嵌套资源?如何发布嵌套资源?

    我正在使用 Django REST 框架构建 REST Web API 事情进展顺利 但我偶然发现了嵌套资源的问题 起初 REST API 中的所有关系都是超链接的 例如 一篇文章看起来像这样 path http api myproject
  • 来自 iPhone/iPad 的 json Web 服务

    有人可以帮助我解决如何从 iphone 或 ipad 使用 json Web 服务的问题吗 这里我的要求是使用 API 密钥实现 json webservice 如果可能的话发布一些教程或示例链接 谢谢 规范的 JSON 处理库是here
  • 使用 asp.net 发送 20,000 多封电子邮件

    我正在编写一个应用程序 需要向从我们的数据库中选择的学生发送大量电子邮件 每封电子邮件都将进行个性化 包括他们的姓名 学习课程等 因此需要一次发送一个 我可以在 SmtpClient 上循环执行此操作 但我担心我尝试发送的数字最终会遇到超时

随机推荐

  • 设置可由我的网络上的其他设备访问的 Django 开发服务器

    我想设置一个 Django 开发服务器 我的计算机和智能手机都可以通过 Wi Fi 在我的网络上访问该服务器 我已经设置了我的计算机可以访问的开发服务器http 127 0 0 1 8000 http 127 0 0 1 8000 但是 我
  • 如何向 c3.js 图表添加标题

    任何人都可以建议我向 C3 js 折线图和条形图添加标题的方法吗 我有以下示例 但它用于仪表图表 对于任何 c3 图表 是否有任何选项可以设置图表标题 donut title Title 这是谷歌的热门结果 所以我想我应该补充一点 它现在是
  • 固定背景封面在移动视图中放大

    我在这里为我的网站使用固定背景封面 http www datisdesign com http www datisdesign com 每个页面都有一个很大的标题图像 但在手机等小型设备中 封面图像变得很大 我想让它在移动设备上变得更小 这
  • 虚假评论数据集

    互联网上有包含常见垃圾邮件的数据集 但我需要包含虚假评论的数据集来进行一些研究 但我找不到任何数据集 有人能给我关于在哪里可以获得虚假评论数据集的建议吗 我们的数据集可以在我的康奈尔大学主页上找到 http www cs cornell e
  • 强制下载mp4文件

    我想强迫用户下载 YouTube 视频 例如this http goo gl zNUlV网址 我下载了视频 可以播放原始视频 但即使视频的长度 大小相同 我在强制下载时也无法播放 function force download file v
  • 保留 WinRT 应用程序设置的最佳方式?

    我正在开发一个 WinRT 应用程序 它实际上也是一个游戏 我需要以文件或其他方式保存不同的信息 例如音频设置或播放器统计信息 如果它是一个文件 只需将设置写入或 我有一个想法 但我认为太初级了 获得这个的最佳方法是什么 非常感谢任何帮助或
  • PostgreSQL 字符串转义设置

    我有 2 台服务器 S1 S2与相同的SELECT version 使用相同的数据库test包含一个表t1具有类型的列text 我尝试插入 2 个带有符号的字符串数组 其中之一 INSERT into t1 columnname VALUE
  • 如何获取Scala函数的参数/返回类型?

    我有一个函数 想要获取它的参数类型和返回类型以在 Scala 宏中使用 scala gt val fn a String b Double gt 123 fn String Double gt Int
  • 尝试远程连接到 websphere 上的 JMS 队列时出现 sun/io/MalformedInputException

    我知道 非常 类似的问题 https stackoverflow com questions 27272877 how to solve sun io malformedinputexception during jndi lookup o
  • 找不到模块“反应”

    我正在尝试将 React 集成到现有的网页中 目前 我无法加载我的 React 应用程序 我的 React 应用程序有两个文件 这时 他们的样子是这样的 myApp js import React from react import Rea
  • 使用 python 2.5 安装 django,而不是使用默认版本的 python

    我必须在我的 Linux 服务器上安装 Django 其中 python 2 4 可作为默认安装 我已经安装了 python 2 5 作为单独的版本 现在我必须安装 Django 我必须将其与 python 2 5 一起使用 是否有任何特定
  • 将数据类型 varchar 转换为数字动态数据透视表时出错

    我收到标题中描述的错误 其中我的代码如下所示 declare cols numeric 10 0 sql numeric 10 0 select cols isnull cols T AmountPayd from select disti
  • 将 AST 节点转换为 python 代码

    假设我有以下字符串 code if 1 1 and 2 2 and 3 3 test 1 以下代码将该字符串转换为 AST ast parse code 然后我有一棵树 Module body lt ast If object at 0x1
  • 如何使用 Firebase 刷新令牌来持久进行身份验证?

    我几周来一直试图解决这个问题 但似乎无法理解文档或其他东西 我很感激你能提供的任何帮助 我正在使用 Firebase SDK 我有我的服务器端路由 我可以在其中访问令牌并将其发送到前端 const admin require firebas
  • 如何正确获取在 AppEngine 上运行的 NodeJS 中的云功能的令牌?

    我在获取正确的令牌来触发我的云功能时遇到问题 通过 POSTMAN 测试时 我通过运行以下命令获取令牌 gcloud auth print identity token 我的功能工作正常 但在我的服务器上我使用以下代码 我也确实看到了该令牌
  • 2 个相互关联的案例陈述

    我对 SQL 编码比较陌生 并且有一个关于 case 语句的问题 我想要实现的目标 我想创建一个用于计算正确的过时规定的查询 为此 我需要创建一个名为的列Inventory Reach和一个叫Devaluation Class 这两个字段都
  • 如何导入和导出 JBPM 6.5 存储库

    我想问您是否知道如何在不同的 Kie Workbench 之间导出和导入 JBPM 项目 我正在使用 JBPM 6 5 谢谢 使用 Git 可能是唯一合理的方法 按照此顺序 可以将项目放入 git 存储库 然后将其导入到其他实例 在装有 j
  • 抛出检查异常

    我在Java中的一些方法会抛出异常 例如NoSuchElementException IllegalArgumentException等 但是当使用这些方法时 这些异常似乎是未经检查的 换句话说 我的方法的调用者不需要对抛出这些异常的方法执
  • 在 Ruby on Rails 5 中禁用 ActiveRecord

    我是 Rails 的新手 我想在 Rails 5 中禁用 ActiveRecord 我已经找到了几个答案Here https stackoverflow com questions 28319002 how do i remove acti
  • 将整数列表传递给 GET REST API

    我想从前端的数据库中获取实体列表 所以我在 Spring MVC 中编写了 POST REST HTTP 调用 但我读过 HTTP 文档 其中说每当您必须从数据库检索数据时 更喜欢 GET 调用 那么 是否有任何我可以将 Angular J