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

spring RestTemplate getForObject获取404

郎羽
2023-03-14

我试图向Api Rest发出get请求,但我总是得到404,尽管如此,如果尝试在浏览器或邮递员中复制queryUrl,它会非常工作。

restTemplate.getForObject(queryUrl, entity ,Integer.class);

我也试过这个:

HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setContentType(MediaType.APPLICATION_JSON);
HttpEntity entity = new HttpEntity(httpHeaders);
log.debug("request headers: " + entity.getHeaders());
ResponseEntity response = restTemplate.exchange(queryUrl, 
HttpMethod.GET, entity, String.class);

但什么都没变。有人能帮我吗?

共有2个答案

璩无尘
2023-03-14

你是对的,当然用法是正确的。问题是UriComponentBuilder在URL的en处包含了一个空格。

我把它修好了。

String queryUrl = UriComponentsBuilder.fromUriString(HOST)
                .path(PATH)
                .buildAndExpand(param)
                .toUriString().trim();
龙亮
2023-03-14

这花了我一点时间才弄明白,所以我会在这里留个小纸条,希望有一天它能帮助到别人。在使用Restemplate.getForEntity(URL,Type)发出get请求时,我一直得到一个404。这个URL在Chrome和Postman中工作,但在我的代码中不行。最后是因为我的URL中有一个不安全的字符,确切地说是一个%,因为我的URL有空格,所以URL没有空格,而是%20。邮差和Chrome可以处理这个,但我的代码不行。一旦我把不安全的角色换成一个实际的空间,一切都很好。

希望你也能成功。

 类似资料:
  • 我们使用nextjs/reactjs作为FE,并且我们有一个server.js文件,它允许我们在上传映像,但是由于某种原因,每当我们运行服务器时,都会出现错误 下面是我们在server.js上的代码 这些是我们package.json中包含的脚本 希望得到一些答案和建议。这些代码在本地运行,没有任何问题

  • 英文原文: http://emberjs.com/guides/getting-ember/index/ Ember构建 Ember的发布管理团队针对Ember和Ember Data维护了不同的发布方法。 频道 最新的Ember和Ember Data的 Release,Beta 和 Canary 构建可以在这里找到。每一个频道都提供了一个开发版、最小化版和生产版。更多关于不同频道的信息可以查看博客

  • 获取资讯列表 获取置顶资讯列表 获取资讯详情 获取一条资讯的相关资讯 获取资讯列表 GET /news 传入参数 名称 说明 limit 数据返回条数 默认为20 after 数据翻页标识 key 搜索关键字 cate_id 分类id recommend 推荐筛选 =1为筛选推荐资讯列表 id 需要按照 ID 获取的资讯 ID,多个使用半角 , 进行分割 Response Status: 200

  • 我刚到Angular 2还在学习,我正在尝试用get调用击一个URL,但get似乎不通过,即使在浏览器的网络中,我也找不到被调用的get URL。 程序将转到方法控制台,在get调用的上下记录日志,但不记录get调用的日志 我的服务方式

  • 我有一个使用redux的应用程序 我也曾在本地获取数据。 在我的反应组件中,我使用来获取数据。但我什么也没得到。 如何在我的组件中获取数据? 演示:https://codesandbox.io/s/nervous-rosalind-lp16j?file=/src/App.js:242-328

  • 我在生产环境中遇到以下错误 DEBUG org.apache.camel.processor.DefaultErrorHandler - exchangeId 的传递失败:ID-*-56874-1372457272212-0-1。传递尝试时:0 捕获:org.apache.camel.CamelExecutionException:在交换执行期间发生异常:Exchange DEBUG org.ap

  • 1.5. 获取URL 对于很多现代应用来说,访问互联网上的信息和访问本地文件系统一样重要。Go语言在net这个强大package的帮助下提供了一系列的package来做这件事情,使用这些包可以更简单地用网络收发信息,还可以建立更底层的网络连接,编写服务器程序。在这些情景下,Go语言原生的并发特性(在第八章中会介绍)显得尤其好用。 为了最简单地展示基于HTTP获取信息的方式,下面给出一个示例程序fe