Spring-boot oauth2使用RestTemplate进行后台自动登录的实现

 更新时间:2020年07月03日 10:00:47   作者:Guoye  
这篇文章主要介绍了Spring-boot oauth2使用RestTemplate进行后台自动登录的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

内容不限于登录业务,主要简单介绍RestTemplate的用法,包括

  • 使用RestTemplate进行post请求 postForObject
  • 使用RestTemplate带body/form-data进行post请求 MultiValueMap
  • 使用RestTemplate带josn进行post请求JSONObject
  • 使用RestTemplate带头信息headers进行post请求 HttpHeaders

登录流程

  • 定义 RestTemplate
  • 定义 MultiValueMap,构造 post的body内容
  • 定义 HttpHeaders,构造请求的头部信息
  • 定义 HttpEntity,发送请求的实体
  • 定义 RestTemplate,进行请求。返回数据

主要代码

  // 构造 post的body内容(要post的内容,按需定义)
  MultiValueMap<String, String> paramsMap = new LinkedMultiValueMap<>();
  paramsMap.set("grant_type", "password");
  paramsMap.set("username", "yourname");
  paramsMap.set("password", "yourpassword");

  // 构造头部信息(若有需要)
  HttpHeaders headers = new HttpHeaders();
  headers.add("Authorization", "Basic xxxxxx你的认证密钥");
  // 设置类型 "application/json;charset=UTF-8"
  headers.setContentType(MediaType.APPLICATION_JSON); 
  
  // 构造请求的实体。包含body和headers的内容
  HttpEntity<MultiValueMap<String, String>> request = new HttpEntity(paramsMap, headers);
  
  // 声明 restTemplateAuth(用作请求)
  RestTemplate restTemplateAuth = new RestTemplate(); 
  // 进行请求,并返回数据 
  String authInfo = restTemplateAuth.postForObject("http://localhost:8089/oauth/token", request, String.class);

使用josn请求的示例代码

Posting JSON with postForObject

  JSONObject personJsonObject = new JSONObject();
  personJsonObject.put("id", 1);
  personJsonObject.put("name", "John");

  HttpEntity<String> request = new HttpEntity<String>(personJsonObject.toString(), headers);
  String personResultAsJsonStr = restTemplate.postForObject("url", request, String.class);

 到此这篇关于Spring-boot oauth2使用RestTemplate进行后台自动登录的实现的文章就介绍到这了,更多相关Spring-boot oauth2 后台自动登录内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java中二维数组的正确使用方法介绍

    Java中二维数组的正确使用方法介绍

    Java中有一维数组,二维数组以及多维数组,在这篇文章中,将给大家详细介绍一下如何正确使用Java中的二维数组,感兴趣的小伙伴跟着小编一起学习吧
    2023-05-05
  • SpringMVC ModelAndView的用法使用详解

    SpringMVC ModelAndView的用法使用详解

    这篇文章主要介绍了SpringMVC ModelAndView的用法使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • 面试题:Java 实现查找旋转数组的最小数字

    面试题:Java 实现查找旋转数组的最小数字

    这篇文章主要介绍了Java 实现查找旋转数组的最小数字,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • JavaWeb使用mvc模式实现登录功能

    JavaWeb使用mvc模式实现登录功能

    本文主要介绍了JavaWeb使用mvc模式实现登录功能,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • Java毕业设计实战之财务预算管理系统的实现

    Java毕业设计实战之财务预算管理系统的实现

    这是一个使用了java+SSM+Jsp+Mysql+Layui+Maven开发的财务预算管理系统,是一个毕业设计的实战练习,具有财务预算管理该有的所有功能,感兴趣的朋友快来看看吧
    2022-02-02
  • Spring boot集中异常处理方法实例

    Spring boot集中异常处理方法实例

    这篇文章主要介绍了Spring boot集中异常处理方法实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • SpringBoot之如何正确、安全的关闭服务

    SpringBoot之如何正确、安全的关闭服务

    这篇文章主要介绍了SpringBoot之如何正确、安全的关闭服务问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • Java找不到或无法加载主类及编码错误问题的解决方案

    Java找不到或无法加载主类及编码错误问题的解决方案

    今天小编就为大家分享一篇关于Java找不到或无法加载主类及编码错误问题的解决方案,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • Mybatis基于TypeHandler实现敏感数据加密

    Mybatis基于TypeHandler实现敏感数据加密

    业务场景中经常会遇到诸如用户手机号,身份证号,银行卡号,邮箱,地址,密码等等信息,属于敏感信息,本文就来介绍一下Mybatis基于TypeHandler实现敏感数据加密,感兴趣的可以了解一下
    2023-10-10
  • Java通俗易懂系列设计模式之策略模式

    Java通俗易懂系列设计模式之策略模式

    这篇文章主要介绍了Java通俗易懂系列设计模式之策略模式,对设计模式感兴趣的同学,一定要看一下
    2021-04-04

最新评论