RestTemplate get請(qǐng)求,header設(shè)置及傳參過(guò)程
前言
Spring Boot RestTemplate使用get請(qǐng)求,請(qǐng)求頭header的設(shè)置及傳參方式
- 1. 有參數(shù),沒(méi)有請(qǐng)求頭
- 2. 有請(qǐng)求頭,沒(méi)參數(shù)
- 3. 有請(qǐng)求頭,有參數(shù)
RestTemplate
代碼如下:
package com.xinghuo.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.ResponseEntity;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* 測(cè)試restTemplate
*/
@RestController
@Api(tags = "測(cè)試")
@RequestMapping("/test")
public class HttpController{
@Autowired
private RestTemplate restTemplate;
/**
* 測(cè)試
*/
@RequestMapping(value = "/http", method = RequestMethod.GET)
@ApiOperation(value = "測(cè)試http")
public String http() {
String id = "52db70d13ad74b0f85142e39b32164b4";
String name = "測(cè)試";
//參數(shù)
MultiValueMap<String, Object> param = new LinkedMultiValueMap<String, Object>();
param.add("id", id);
param.add("name", name);
//請(qǐng)求頭
HttpHeaders headers = new HttpHeaders();
headers.add("accessToken", "3d40e41e9d764d30a9a4d72e61ad61b9");
//封裝請(qǐng)求頭
HttpEntity<MultiValueMap<String, Object>> formEntity = new HttpEntity<MultiValueMap<String, Object>>(headers);
try {
//訪問(wèn)地址
String url = "http://localhost:8080/testservice/test/get";
//1. 有參數(shù),沒(méi)有請(qǐng)求頭,拼接方式
String result1 = restTemplate.getForObject(url + "?id="+id+"&name="+name, String.class);
//2. 有參數(shù),沒(méi)有請(qǐng)求頭,占位符方式
String result2 = restTemplate.getForObject(url + "?id={id}&name={name}", String.class, param);
//3. 有請(qǐng)求頭,沒(méi)參數(shù),result3.getBody()獲取響應(yīng)參數(shù)
ResponseEntity<String> result3 = restTemplate.exchange(url, HttpMethod.GET, formEntity, String.class);
//4. 有請(qǐng)求頭,有參數(shù),result4.getBody()獲取響應(yīng)參數(shù)
ResponseEntity<String> result4 = restTemplate.exchange(url+"?id="+id+"&name="+name, HttpMethod.GET, formEntity, String.class);
} catch (Exception e) {
e.printStackTrace();
}
return "success";
}
}總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Java?restTemplate發(fā)送get請(qǐng)求query參數(shù)傳遞問(wèn)題解決
- RestTemplate get請(qǐng)求攜帶headers自動(dòng)拼接參數(shù)方式
- restTemplate發(fā)送get與post請(qǐng)求并且?guī)?shù)問(wèn)題
- 關(guān)于RestTemplate中的Get請(qǐng)求
- RestTemplate調(diào)用POST和GET請(qǐng)求示例詳解
- RestTemplate Get請(qǐng)求實(shí)現(xiàn)bean參數(shù)傳遞詳解
- RestTemplate發(fā)送HTTP?GET請(qǐng)求使用方法詳解
- RestTemplate實(shí)現(xiàn)發(fā)送帶headers的GET請(qǐng)求
- spring boot RestTemplate 發(fā)送get請(qǐng)求的踩坑及解決
相關(guān)文章
SpringSecurity?Web權(quán)限方案實(shí)現(xiàn)全過(guò)程
Spring Security是一個(gè)功能強(qiáng)大且高度可定制的身份驗(yàn)證和授權(quán)框架,專(zhuān)門(mén)用于保護(hù)Java應(yīng)用程序的Web集成,下面這篇文章主要給大家介紹了關(guān)于SpringSecurity?Web權(quán)限方案實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下2024-01-01
SpringBoot+ResponseBodyEmitter實(shí)時(shí)異步流式推送的實(shí)現(xiàn)
本文主要介紹了SpringBoot+ResponseBodyEmitter實(shí)時(shí)異步流式推送的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-11-11
基于Java實(shí)現(xiàn)簡(jiǎn)易的七星彩號(hào)碼生成器
七星彩是中國(guó)體育彩票的一種玩法,由中國(guó)國(guó)家體育總局體育彩票管理中心統(tǒng)一發(fā)行。本文為大家準(zhǔn)備了一個(gè)七星彩號(hào)碼生成器Java工具類(lèi),感興趣的可以了解一下2022-08-08
Java中ReentrantReadWriteLock讀寫(xiě)鎖的實(shí)現(xiàn)
本文主要介紹了ReentrantReadWriteLock讀寫(xiě)鎖,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-05-05
Java?中的?getDeclaredFields()使用與原理解析
在Java反射機(jī)制中,getDeclaredFields()用于獲取類(lèi)的所有字段,包括私有字段,通過(guò)反射,可以在運(yùn)行時(shí)動(dòng)態(tài)地獲取類(lèi)的信息并操作其成員,本文詳細(xì)介紹了getDeclaredFields()的使用方法、工作原理以及最佳實(shí)踐,涵蓋了反射的基本概念、使用場(chǎng)景和注意事項(xiàng),感興趣的朋友一起看看吧2025-01-01
Java Properties簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
Java中有個(gè)比較重要的類(lèi)Properties(Java.util.Properties),主要用于讀取Java的配置文件,各種語(yǔ)言都有自己所支持的配置文件,配置文件中很多變量是經(jīng)常改變的,這樣做也是為了方便用戶(hù),讓用戶(hù)能夠脫離程序本身去修改相關(guān)的變量設(shè)置2017-05-05
java設(shè)計(jì)模式之單例模式學(xué)習(xí)
單例對(duì)象(Singleton)是一種常用的設(shè)計(jì)模式。在Java應(yīng)用中,單例對(duì)象能保證在一個(gè)JVM中,該對(duì)象只有一個(gè)實(shí)例存在2014-01-01
Java 內(nèi)存模型中的happen-before關(guān)系詳解
這篇文章主要為大家介紹了Java 內(nèi)存模型中的happen-before關(guān)系示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10
關(guān)于Mybatis動(dòng)態(tài)sql中test的坑點(diǎn)總結(jié)
這篇文章主要介紹了關(guān)于Mybatis動(dòng)態(tài)sql中test的坑點(diǎn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-01-01

