import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.client.utils.URLEncodedUtils;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.apache.http.protocol.HTTP;
import org.apache.http.util.EntityUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import java.io.IOException;
import java.io.InputStream;
import java.net.URLDecoder;
import java.util.ArrayList;
import java.util.List;
String result = "";
HttpGet httpGet = null;
try {
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("code","network"));
params.add(new BasicNameValuePair("pageSize","25"));
HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams,5000); //设置连接超时为5秒
//1. 生成http客户端发送请求对象
HttpClient httpClient = new DefaultHttpClient(httpParams);
//指定请求URL。
String url = URLDecoder.decode(uri, "UTF-8") + "?" + URLEncodedUtils.format(params,"UTF-8");
//2设定请求方式,需要发送GET请求,创建HttpGet对象
httpGet = new HttpGet(url);
httpGet.setHeader("userName",userName);
httpGet.setHeader("password",password);
//2设定请求方式,需要发送POST请求,创建HttpPost对象。
HttpPost httpPost = new HttpPost(url);
//对于HttpPost对象而言,也可调用setEntity(HttpEntity entity)方法来设置请求参数
if (params!=null && params.size()!=0) {
//把键值对进行编码操作并放入HttpEntity对象中
httpPost.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
}
//3. 可调用HttpGet、HttpPost共同的setParams(HetpParams params)方法来添加请求参数
//4. 调用HttpClient对象的execute发送请求,该方法返回一个HttpResponse
HttpResponse httpResponse = httpClient.execute(httpGet);
// HTTP版本号 响应状态码 响应内容 HTTP/1.1 200 OK
//调用HttpResponse的getHeaders方法可获取服务器的响应头;
httpResponse.getProtocolVersion();
httpResponse.getStatusLine().getStatusCode();
httpResponse.getStatusLine().getReasonPhrase();
// 判断网络连接是否成功
if(httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK){
//调用HttpResponse的getEntity()方法可获取HttpEntity对象,该对象包装了服务器的响应内容
HttpEntity httpEntity = httpResponse.getEntity();
result = EntityUtils.toString(httpEntity,"UTF-8");
if (null != httpEntity) {
InputStream in = httpEntity.getContent();
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(in);
document.getDocumentElement().normalize();
Element rootElement = document.getDocumentElement();
NodeList uriNode = rootElement.getElementsByTagName("uri");
Element element = (Element) uriNode.item(0);
result = element.getTextContent();
}
}
} catch (IOException e) {
e.printStackTrace();
} catch (ParserConfigurationException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
} finally {
//6. 释放连接。无论执行方法是否成功,都必须释放连接
httpGet.releaseConnection();
}
return result;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.client.utils.URLEncodedUtils;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.apache.http.protocol.HTTP;
import org.apache.http.util.EntityUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import java.io.IOException;
import java.io.InputStream;
import java.net.URLDecoder;
import java.util.ArrayList;
import java.util.List;
String result = "";
HttpGet httpGet = null;
try {
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("code","network"));
params.add(new BasicNameValuePair("pageSize","25"));
HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams,5000); //设置连接超时为5秒
//1. 生成http客户端发送请求对象
HttpClient httpClient = new DefaultHttpClient(httpParams);
//指定请求URL。
String url = URLDecoder.decode(uri, "UTF-8") + "?" + URLEncodedUtils.format(params,"UTF-8");
//2设定请求方式,需要发送GET请求,创建HttpGet对象
httpGet = new HttpGet(url);
httpGet.setHeader("userName",userName);
httpGet.setHeader("password",password);
//2设定请求方式,需要发送POST请求,创建HttpPost对象。
HttpPost httpPost = new HttpPost(url);
//对于HttpPost对象而言,也可调用setEntity(HttpEntity entity)方法来设置请求参数
if (params!=null && params.size()!=0) {
//把键值对进行编码操作并放入HttpEntity对象中
httpPost.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
}
//3. 可调用HttpGet、HttpPost共同的setParams(HetpParams params)方法来添加请求参数
//4. 调用HttpClient对象的execute发送请求,该方法返回一个HttpResponse
HttpResponse httpResponse = httpClient.execute(httpGet);
// HTTP版本号 响应状态码 响应内容 HTTP/1.1 200 OK
//调用HttpResponse的getHeaders方法可获取服务器的响应头;
httpResponse.getProtocolVersion();
httpResponse.getStatusLine().getStatusCode();
httpResponse.getStatusLine().getReasonPhrase();
// 判断网络连接是否成功
if(httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK){
//调用HttpResponse的getEntity()方法可获取HttpEntity对象,该对象包装了服务器的响应内容
HttpEntity httpEntity = httpResponse.getEntity();
result = EntityUtils.toString(httpEntity,"UTF-8");
if (null != httpEntity) {
InputStream in = httpEntity.getContent();
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(in);
document.getDocumentElement().normalize();
Element rootElement = document.getDocumentElement();
NodeList uriNode = rootElement.getElementsByTagName("uri");
Element element = (Element) uriNode.item(0);
result = element.getTextContent();
}
}
} catch (IOException e) {
e.printStackTrace();
} catch (ParserConfigurationException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
} finally {
//6. 释放连接。无论执行方法是否成功,都必须释放连接
httpGet.releaseConnection();
}
return result;