springboot簡單項目:通過URL獲取數據(第三方網頁)中的數據顯示在頁面上面

大家好,我是菜鳥阿貴,今天和大家講述一個簡單的小項目。
項目描述:通過固定url進行訪問第三方網頁,獲取數據以後展示在前端(頁面)。
1:具體實現,springboot項目,用到http協議,以及相關獲取方式。
2:首先我們定義一個client類:

@Service
public class HttpClient {
	public  String client(String url, HttpMethod method, MultiValueMap<String,String> params){
		RestTemplate template = new RestTemplate();
		ResponseEntity<String> response1 = template.getForEntity(url,String.class);
		return  response1.getBody();
	}

	}

3:如代碼塊我們可以直觀地看到:類中方法是一個帶參的方法,包括請求的url,請求的方式,以及拉取到的數據存放在一個集合,並且以param定義。
4:ResponseEntity response1 代表響應的實體類,

***RestTemplate***是Spring提供的一個服務之間請求的工具,並且可以自動實現json的序列化和反序列化。
然後在返回請求體的get方法。

5:隨後我們再定義一個控制層:定義爲:HelloController.java
代碼塊爲:`@RestController
@RequestMapping(value = “hello”)
public class HelloController {

private String u = "http://127.0.0.1";

@Autowired
HttpClient httpClient;
@RequestMapping(value = "hellos")
public String hello(){
String url = u+"/api/table.xml?content=sensors" +
		"&username=prtgadmin&password=prtgadmin&" +
			"group,device,sensor,status," +
			"message,lastvalue,priority,favorite";
	HttpMethod httpMethod = HttpMethod.GET;
	MultiValueMap<String, String> params = new LinkedMultiValueMap<>();
	return httpClient.client(url,httpMethod,params);

}

}`

由此可見:@RestController 標註爲controller類

Mapping映射爲 “hello”

在類中定義一個私有的字符串:就是你要輸入的url的固定請求頭,之所以將他單獨放在上面是因爲後面可以根據需求改動,把它們分開以便於修改添加,我的url前面固定的是“
“http://127.0.0.1””,所以我將他單獨拿出來定義在最前面!
2:然後將剛纔寫的類用@Autowired自動注入進來,
再定義一串要請求的url,將剛纔定義的u和他進行拼接即可!

3:再利用HttpClient 中的 GET方法(請求方式分爲GET和POST,區別自行百度)。

4:利用get進行網頁請求!

:5: MultiValueMap<String, String> params = new LinkedMultiValueMap<>();
將獲取到的網頁數據用LinkedMultiValueMap接收存放,
返回httpClient中的請求體的內容,包括(url,請求方式,請求內容存放的集合),

6:運行起項目,頁面會顯示拉去的數據!!!!

--------金鱗豈是池中物,一遇風雲變化龍----------

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章