HttpEntity的實體類使用


 

1.簡單介紹:

HttpEntity表示Http請求的實體和Http響應的實體;

RequestEntity表示請求的實體,里面有獲取請求頭,請求行,等內容的方法;

ResponseEntity表示Http響應的實體,里面有響應行,響應體等的方法;

HttpHeaders表示請求實體,響應實體的header頭,通過創建httpHeaders放在requestEntity返回響應頭的信息。

2.應用場景:

  通常結合RestTemplate發送http請求,獲取請求實體requestEntity,響應實體里面responseBody里面的數據。

 

3.舉例說明:

  3.1使用ajax發送異步請求

  

$.ajax({
    type: "POST",
    url: targetUrl,
    data: user,//傳遞的參數
    dataType:"json",//前端可以接收服務器傳過來的數據的類型,json
    contentType: "application/json",
    beforeSend: function(xhr){//請求發送之前執行函數,添加請求頭
        xhr.setRequestHeader("token","shfashfdasfhdashfoasf");
    },
    success: function(user){
        alert(user.username);
    },
    error:function(){
        alert("異常,請檢查");
    }

  3.2controller接受請求過來的參數信息

 1     @PostMapping("user/{id}")
 2     public ResponseEntity<User>getUserId(@PathVariable("id")Long id, RequestEntity requestEntity){
 3         //獲取請求url
 4         System.out.println ("請求url:"+requestEntity.getUrl () );
 5         System.out.println ("獲取請求頭信息:" );
 6         HttpHeaders headers = requestEntity.getHeaders ( );
 7 
 8         System.out.println ("內容的長度:"+headers.getContentLength () );
 9         System.out.println ( "文檔類型:"+headers.getContentType () );
10         System.out.println ("accept:"+ headers.getAccept ());
11         System.out.println ("Origin:"+ headers.getOrigin ());
12         System.out.println ("TOKEN"+ headers.getFirst ("token"));
13 
14         HttpHeaders responseHeader = new HttpHeaders (  );
15         responseHeader.set ("key","value");
16         User user = new User ();
17         user.setId (1L);
18         user.setName ("王傑");
19         user.setAge (23);
20         user.setEmail ("yahuimiao");
21 
22         return new ResponseEntity<User>  (user,responseHeader, HttpStatus.OK);
23 
24 //        User user = userService.findById (id);
25 //        return user.toString ();
26 
27     }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM