Spring-boot oauth2使用RestTemplate進(jìn)行后臺自動登錄的實現(xiàn)
內(nèi)容不限于登錄業(yè)務(wù),主要簡單介紹RestTemplate的用法,包括
- 使用RestTemplate進(jìn)行post請求 postForObject
- 使用RestTemplate帶body/form-data進(jìn)行post請求 MultiValueMap
- 使用RestTemplate帶josn進(jìn)行post請求JSONObject
- 使用RestTemplate帶頭信息headers進(jìn)行post請求 HttpHeaders
登錄流程
- 定義 RestTemplate
- 定義 MultiValueMap,構(gòu)造 post的body內(nèi)容
- 定義 HttpHeaders,構(gòu)造請求的頭部信息
- 定義 HttpEntity,發(fā)送請求的實體
- 定義 RestTemplate,進(jìn)行請求。返回數(shù)據(jù)
主要代碼
// 構(gòu)造 post的body內(nèi)容(要post的內(nèi)容,按需定義) MultiValueMap<String, String> paramsMap = new LinkedMultiValueMap<>(); paramsMap.set("grant_type", "password"); paramsMap.set("username", "yourname"); paramsMap.set("password", "yourpassword"); // 構(gòu)造頭部信息(若有需要) HttpHeaders headers = new HttpHeaders(); headers.add("Authorization", "Basic xxxxxx你的認(rèn)證密鑰"); // 設(shè)置類型 "application/json;charset=UTF-8" headers.setContentType(MediaType.APPLICATION_JSON); // 構(gòu)造請求的實體。包含body和headers的內(nèi)容 HttpEntity<MultiValueMap<String, String>> request = new HttpEntity(paramsMap, headers); // 聲明 restTemplateAuth(用作請求) RestTemplate restTemplateAuth = new RestTemplate(); // 進(jìn)行請求,并返回數(shù)據(jù) 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);
到此這篇關(guān)于Spring-boot oauth2使用RestTemplate進(jìn)行后臺自動登錄的實現(xiàn)的文章就介紹到這了,更多相關(guān)Spring-boot oauth2 后臺自動登錄內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
面試題:Java 實現(xiàn)查找旋轉(zhuǎn)數(shù)組的最小數(shù)字
這篇文章主要介紹了Java 實現(xiàn)查找旋轉(zhuǎn)數(shù)組的最小數(shù)字,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-07-07Java畢業(yè)設(shè)計實戰(zhàn)之財務(wù)預(yù)算管理系統(tǒng)的實現(xiàn)
這是一個使用了java+SSM+Jsp+Mysql+Layui+Maven開發(fā)的財務(wù)預(yù)算管理系統(tǒng),是一個畢業(yè)設(shè)計的實戰(zhàn)練習(xí),具有財務(wù)預(yù)算管理該有的所有功能,感興趣的朋友快來看看吧2022-02-02SpringBoot之如何正確、安全的關(guān)閉服務(wù)
這篇文章主要介紹了SpringBoot之如何正確、安全的關(guān)閉服務(wù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03Mybatis基于TypeHandler實現(xiàn)敏感數(shù)據(jù)加密
業(yè)務(wù)場景中經(jīng)常會遇到諸如用戶手機號,身份證號,銀行卡號,郵箱,地址,密碼等等信息,屬于敏感信息,本文就來介紹一下Mybatis基于TypeHandler實現(xiàn)敏感數(shù)據(jù)加密,感興趣的可以了解一下2023-10-10