java http get json_java实现Http post(参数json格式)、get 请求
java代碼實現http請求工具類封裝
參數介紹:
get方式請求:url:請求地址的字符串
post方式請求:url:請求地址的字符串
jsonString:json字符串
注意:json字符串的生成的方法如下
需要封裝的json格式如下:
{
"touser":"OPENID",
"template_id":"ngqIpbwh8bUfcSsECmogfXcV14J0tQlEpBO27izEYtY",
"data":{
"first": {
"value":"恭喜你審核通過!",
"color":"#173177"
},
"keyword1":{
"value":"中心",
"color":"#173177"
},
"keyword2": {
"value":"移動開發",
"color":"#173177"
},
"remark":{
"value":"點擊進入",
"color":"#173177"
}
}
}
java代碼轉json字符串:
Map params=new HashMap();
Map data=new HashMap();
Map first=new HashMap();
Map keyword1=new HashMap();
Map keyword2=new HashMap();
Map remark=new HashMap();
remark.put("value", "點擊進入");
remark.put("color", "#173177");
keyword2.put("value", "移動開發");
keyword2.put("color", "#173177");
keyword1.put("value", "中心");
keyword1.put("color", "#173177");
first.put("value", "恭喜你審核通過");
first.put("color", "#173177");
data.put("first", first);
data.put("keyword1", keyword1);
data.put("keyword2", keyword2);
data.put("remark", remark);
params.put("touser", openid);
params.put("template_id", "");
params.put("data", data);
String paramString= JSON.toJSONString(params);
另外,也可以用轉移字符直接“\” 將雙引號直接轉成字符串內容。
java實現http的get、post請求工具類:
package com.css.sword.swordkb.web;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.nio.charset.Charset;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
public class HttpUtil {
private static CloseableHttpClient httpClient;
static {
PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager();
cm.setMaxTotal(100);
cm.setDefaultMaxPerRoute(20);
cm.setDefaultMaxPerRoute(50);
httpClient = HttpClients.custom().setConnectionManager(cm).build();
}
public static String get(String url) {
CloseableHttpResponse response = null;
BufferedReader in = null;
String result = "";
try {
HttpGet httpGet = new HttpGet(url);
RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(30000).setConnectionRequestTimeout(30000).setSocketTimeout(30000).build();
httpGet.setConfig(requestConfig);
httpGet.setConfig(requestConfig);
httpGet.addHeader("Content-type", "application/json; charset=utf-8");
httpGet.setHeader("Accept", "application/json");
response = httpClient.execute(httpGet);
in = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
StringBuffer sb = new StringBuffer("");
String line = "";
String NL = System.getProperty("line.separator");
while ((line = in.readLine()) != null) {
sb.append(line + NL);
}
in.close();
result = sb.toString();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (null != response) {
response.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return result;
}
public static String post(String url, String jsonString) {
CloseableHttpResponse response = null;
BufferedReader in = null;
String result = "";
try {
HttpPost httpPost = new HttpPost(url);
RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(30000).setConnectionRequestTimeout(30000).setSocketTimeout(30000).build();
httpPost.setConfig(requestConfig);
httpPost.setConfig(requestConfig);
httpPost.addHeader("Content-type", "application/json; charset=utf-8");
httpPost.setHeader("Accept", "application/json");
httpPost.setEntity(new StringEntity(jsonString, Charset.forName("UTF-8")));
response = httpClient.execute(httpPost);
in = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
StringBuffer sb = new StringBuffer("");
String line = "";
String NL = System.getProperty("line.separator");
while ((line = in.readLine()) != null) {
sb.append(line + NL);
}
in.close();
result = sb.toString();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (null != response) {
response.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return result;
}
}
總結
以上是生活随笔為你收集整理的java http get json_java实现Http post(参数json格式)、get 请求的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 花呗消费可以使用借呗还款吗?做法可行
- 下一篇: java数组空指针一场_Java使用自定