二、get方法的請求和測試
import java.io.IOException;
import java.util.HashMap;
import org.apache.http.Header;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.json.JSONObject;
import org.json.JSONString;
public class RestClient {
public void get(String url) throws Exception {
//建立一個可關閉的HttpClient物件
CloseableHttpClient httpClient = HttpClients.createDefault();
//建立一個HttpGet的請求物件
HttpGet get = new HttpGet(url);
//執行請求,相當於postman上點擊發送按鈕,然後賦值給HttpResponse物件接收
CloseableHttpResponse httpResponse = httpClient.execute(get);
//獲取響應的程式碼
int statusCode = httpResponse.getStatusLine().getStatusCode();
System.out.println("獲取響應的程式碼"+statusCode);
//把響應的內容存在字串中
String responseString = EntityUtils.toString(httpResponse.getEntity(),"utf-8");
System.out.println(responseString);
//建立Json物件,把上面你的字串序列化為Json物件
JSONObject jsonObject = new JSONObject(responseString);
System.out.println("respon json from API-->" + jsonObject);
//獲取響應頭資訊,返回是一個數組
Header[] headerArray = httpResponse.getAllHeaders();
//建立一個hashmap物件,通過postman可以看到請求響應頭資訊都是Key和value得形式,所以我們想起了HashMap
HashMap<String, String> hm = new HashMap<String, String>();
//增強for迴圈遍歷headerArray陣列,依次把元素新增到hashmap集合
for(Header header : headerArray) {
hm.put(header.getName(), header.getValue());
}
//列印hashmap
System.out.println("response headers -->"+ hm);
}
public static void main(String[] args) {
RestClient client = new RestClient();
try {
client.get("https://reqres.in/api/users");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
相關推薦
二、get方法的請求和測試
import java.io.IOException;import java.util.HashMap;import org.apache.http.Header;import org.apache.http.client.ClientProtocolException;import org.apache.h
【Android Studio安裝部署系列】二十二、Android studio自動生成set、get方法
setter 自動生成 全選 style 原創文章 back .com 安裝部署 dash 版權聲明:本文為博主原創文章,未經博主允許不得轉載。 操作步驟 將光標放置我們所要生成get,set方法的實體類空白處——然後右鍵—&mdas
java介面自動化4——PUT和Delete請求方法封裝和測試
接著上面一篇,這篇來封裝下PUT和Delete方法。雖然這兩個方法很少用,這篇內容就算了解一下。PUT方法封裝完成參考POST方法,Delete方法封裝可以參考GET方法。由於弄明白了前面的Get和Post方法封裝過程,現在就直接貼出封裝方法和測試程式碼。 1.PUT和Deletet方法 p
十二、列表的初識和操作方法
containe and 推導式 python str bsp -a 任意數據類型 類型 1.列表的初識 why:int bool str str:存儲少量數據 ,如:‘123 True 太白‘ str:無論對其切片還是進行任何其他操作,獲取的
二、Redis命令行和配置文件redis.windows.conf
存在 默認 localhost 字符串 con all get bsp 多行 一、Redis發送命令的兩種方式 redis-cli -h localhost -p 6379redis-cli ping 返回pong 證明正常 二、命令返回值 1、狀態回復,如ping命令
十二、匿名函數和閉包
lee 內存問題 基於 傳參 不能 更多 垃圾 資源 增強 十二、匿名函數和閉包 匿名函數就是沒有名字的函數,閉包是可訪問一個函數作用域裏變量的函數。聲明:本節內容需要有面向對象和少量設計模式基礎,否則無法聽懂. 1.匿名函數 //普通函數 function b
HashMap底層原理分析(put、get方法)
return sta rec oca ati 技術分享 AI TP load 1、HashMap底層原理分析(put、get方法) HashMap底層是通過數組加鏈表的結構來實現的。HashMap通過計算key的hashCode來計算hash值,只要hashCode一樣
【面試必問】python實例方法、類方法@classmethod、靜態方法@staticmethod和屬性方法@property區別
區別 實例 實例變量 對象 s參數 pro 當前 靜態方法 實例方法 【面試必問】python實例方法、類方法@classmethod、靜態方法@staticmethod和屬性方法@property區別 1、#類方法@classmethod,只能訪問類變量,不能訪問實例變量
java介面自動化2——get方法重構和json解析
我們介紹了Get方法的設計過程和測試結果,現在我們需要對前面程式碼進行重構和修改,本篇主要的工作如下 : 1)重構Get方法 2)如何進行JSON解析 3)使用TestNG方法進行測試斷言 1、重構Get方法 前面一篇寫的Get方法比較繁瑣,不光寫了如何進行Get請求
Kafka 學習——一、Kafka 的安裝和測試
一、Kafka 安裝 1.1 Zookeeper 的安裝 進入需要安裝的目錄 (此處以 /usr/software 為準) tar -zxvf /mnt/hgfs/share-file/zookeeper-3.4.13 sudo vim /etc/profil
神經網路中訓練資料集、驗證資料集和測試資料集的區別
whats the difference between train, validation and test set, in neural networks? Answer: The training and validation sets are used during t
Git使用(二、分支的建立和上傳)
介紹使用TortoiseGit建立分支並push到gitlab專案庫,轉載請註明出處。 一、建立一個新的資料夾,把要待編輯的工程從gitlab上pull到該資料夾。 其中URL從gitlab的對應專案中複製 、 Pull完成後: 二、建立本地分支 右鍵資料夾空白
python靜態屬性@property、類方法@classmethod、靜態方法@staticmethod和普通方法
靜態屬性:即將類的函式通過@property屬性封裝,封裝後例項呼叫該函式時,不再需要在函式後面加(),而是用類似呼叫資料屬性的方式直接呼叫函式名稱即可執行函式。 靜態屬性既可以訪問類的屬性,也可以訪問例項的屬性。 類方法:即在類的函式前加@classmethod屬性,函式第一個引數為cls類,表示該函式
SpringBoot表單驗證、AOP處理請求和統一異常處理
表單驗證 假如表單引數很多,用@RequestParam方式就不合適了,引數中可直接使用@Valid Girl gir /** * 新增一個女生 * @return */ @PostMapping(value = "/a
為什麼以下網址用PYTHON裡的Requests.get方法請求失敗呢?
“http:\zhangmenshiting.qianqian.com\data2\music\9be7ef0fee5454a9048fb0d84e352630\601427401\601427401.m4a?xcode=6f7f96b0e3ad7362d1fc
省去Set、Get方法
在IDEA中,可以通過安裝 lombok-plugin-0.19-2018.1 外掛,來省去經常要寫的Set、Get方法。 離線安裝外掛下載地址 http://plugins.jetbrains.com/plugin/6317-lombok-plugi
Java實現http(post、get)請求
package com.wolaidai.credit.management.utils; import com.alibaba.fastjson.JSON; import org.apache.commons.logging.Log; import org.apache
微信小程式實現快遞查詢功能(介面傳值、JSON資料請求和解析、radio-group的使用...)
執行效果: 請求資料之前需要首先在小程式平臺設定伺服器域名 第一個介面的實現:介面傳值、radio-group的使用 first.wxml <!--first.wxml--&g
表單提交Post方法、Get方法背後的祕密
表單用來接受使用者的輸入,並將使用者的輸入以“name=value值對”集合的形式提交到伺服器進行處理。那麼表單是怎樣將資料提交到伺服器的?伺服器是怎樣對錶單資料進行處理的?下面我將為大家揭開表單提交背後的祕密 表單用<form></form> 標記定義,表單
Java中常見的設計模式---簡單工廠模式、工廠方法模式和單例模式
在講設計模式之前,我們首先來說一下面向物件思想的設計原則,在實際的開發中,我們要想更深入的瞭解面向物件思想,就必須熟悉前人總結過的面向物件的思想的設計原則:1.單一職責原則:“高內聚,低耦合”,也就是說,每個類應該只有一個職責,對外只能提供一種功能,而引起類變化的原因應該只有