RestTemplate 出现401错误

RestTemplate 出现401错误以下面 post 请求为栗子使用 RestTemplate 请求需要 TOKEN 认证的接口 请求参数 MultiValueMa String String requestBody newLinkedMul lt gt requestBody add param1 dsdd requestBody add param2 34 String String

//请求参数 MultiValueMap 
  
    requestBody = new LinkedMultiValueMap<>(); requestBody.add("param1","dsdd"); requestBody.add("param2",""); //设置请求头            org.springframework.http.HttpHeaders headers = new org.springframework.http.HttpHeaders(); headers.set(HttpHeaders.CONTENT_TYPE, "application/x-www-form-urlencoded; charset=utf-8"); //添加token认证 headers.set(HttpHeaders.AUTHORIZATION, "Bearer 12e3d012-783c-4650-9eb9-f8e2bdedfd8b"); HttpEntity 
   
     httpEntity = new HttpEntity 
    
      (requestBody,headers); JSONObject json = restTemplate.postForObject("https://xxx/xxx/xxx", httpEntity, JSONObject.class); 
     
    
  

  这个时候就会出现 org.springframework.web.client.HttpClientErrorException: 401 null

 原因在于调用的方法不对,不能调用postForObject(其他GET等等一样),这个方法的验证信息是不起作用的,具体原因请看官方文档,

正确的操作姿势

JSONObject json = restTemplate.exchange("https://xxx/xxx/xxx",HttpMethod.POST,httpEntity,JSONObject.class, new Object[]{}).getBody();

 到此,问题解决。

调用  restTemplate.exchange()方法,token认证信息有效。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/211793.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午9:35
下一篇 2026年3月18日 下午9:36


相关推荐

  • html overflow隐藏滚动条,css隐藏滚动条方法

    html overflow隐藏滚动条,css隐藏滚动条方法我们在前端开发过程中经常会遇到这种情况 在一小块的内容上会加上滚动条 但是为了美观我们会隐藏滚动条还需要支持滚动 最容易的办法就是使用 iscroll 插件来实现 但这不是我们想要的 细想一下 现在 css 其实就可以实现这个功能 经过我深思熟虑后 想到了 3 中比较好的方法 亲测可以使用 并完美兼容 一 通过计算滚动条的宽度来隐藏 HTML 代码 css 代码 outer container width

    2026年3月16日
    3
  • 如何评价Xai最新发布的编程模型grok code fast 1?

    如何评价Xai最新发布的编程模型grok code fast 1?

    2026年3月14日
    1
  • leetcode 通配符匹配_部分匹配查询中有关通配符

    leetcode 通配符匹配_部分匹配查询中有关通配符给定一个字符串 (s) 和一个字符模式 § ,实现一个支持 ‘?’ 和 ‘*’ 的通配符匹配。‘?’ 可以匹配任何单个字符。‘*’ 可以匹配任意字符串(包括空字符串)。两个字符串完全匹配才算匹配成功。说明:s 可能为空,且只包含从 a-z 的小写字母。p 可能为空,且只包含从 a-z 的小写字母,以及字符 ? 和 *。示例 1:输入:s = “aa”p = “a”输出: false解释: “a” 无法匹配 “aa” 整个字符串。示例 2:输入:s = “aa”p = “*

    2022年8月8日
    6
  • Carson带你学Android:SQLlite数据库操作全解析(SQLiteOpenHelper类)

    Carson带你学Android:SQLlite数据库操作全解析(SQLiteOpenHelper类)前言 SQLite 数据库操作在 Android 开发中非常常用今天我将带大家全面了解关于 SQLite 数据库的操作 增 删 查 改 目录 1 SQLite 数据库介绍 SQLite 是 Android 内置的一个小型 关系型 属于文本型的数据库 Android 提供了对 SQLite 数据库的完全支持 应用程序中的任何类都可以通过名称来访问任何的数据库 但是应用程序之外的就不能访问 Android 中 通过 S

    2026年3月16日
    1
  • 各种数据库的分页查询语句[通俗易懂]

    各种数据库的分页查询语句

    2022年3月2日
    49
  • NER 综述

    NER 综述前两天刚做完毕设答辩 slide 最近浏览知乎的时候发现有人分享一篇 2020 年的 NER 综述 做下论文笔记 同时也分享一下自己的的想法 吐槽一句 知乎图片插入好麻烦 不能随心所欲的粘贴 论文 ASurveyonDee 链接 https arxiv org pdf 1812 09449 pdf 目前已被数据挖掘顶刊 TKDE 收录 先膜拜 目录全文简介 NER 任务简介 NER 标注语料库 公开评测集 o

    2026年3月19日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号