package com.tiger.quicknews.http;
import android.util.Log;
import org.apache.http.NameValuePair;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
public class CustomHttpURLConnection {
private static String TAG = "CustomHttpUrlConnection";
private static HttpURLConnection conn;
public CustomHttpURLConnection() {
}
public static String GetFromWebByHttpUrlConnection(String strUrl,
NameValuePair... nameValuePairs) {
String result = "";
try {
URL url = new URL(strUrl);
conn = (HttpURLConnection) url.openConnection();
conn.setDoInput(true);
conn.setConnectTimeout(3000);
conn.setReadTimeout(4000);
conn.setRequestProperty("accept", "*/*");
// int resCode=conn.getResponseCode();
conn.connect();
InputStream stream = conn.getInputStream();
InputStreamReader inReader = new InputStreamReader(stream);
BufferedReader buffer = new BufferedReader(inReader);
String strLine = null;
while ((strLine = buffer.readLine()) != null)
{
result += strLine;
}
inReader.close();
conn.disconnect();
return result;
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
Log.e(TAG, "getFromWebByHttpUrlCOnnection:" + e.getMessage());
e.printStackTrace();
return null;
} catch (IOException e) {
// TODO Auto-generated catch block
Log.e(TAG, "getFromWebByHttpUrlCOnnection:" + e.getMessage());
e.printStackTrace();
return null;
}
}
public static String PostFromWebByHttpURLConnection(String strUrl,
NameValuePair... nameValuePairs) {
String result = "";
try {
URL url = new URL(strUrl);
conn = (HttpURLConnection) url
.openConnection();
// 设置是否从httpUrlConnection读入,默认情况下是true;
conn.setDoInput(true);
// 设置是否向httpUrlConnection输出,因为这个是post请求,参数要放在
// http正文内,因此�?��设为true, 默认情况下是false;
conn.setDoOutput(true);
// 设定请求的方法为"POST",默认是GET
conn.setRequestMethod("POST");
// 设置超时
conn.setConnectTimeout(3000);
conn.setReadTimeout(4000);
// Post 请求不能使用缓存
conn.setUseCaches(false);
conn.setInstanceFollowRedirects(true);
// 设定传�?的内容类型是可序列化的java对象
// (如果不设此项,在传送序列化对象�?当WEB服务默认的不是这种类型时可能抛java.io.EOFException)
conn.setRequestProperty("Content-Type",
"application/x-www-form-urlencoded");
// 连接,从上述�?条中url.openConnection()至此的配置必须要在connect之前完成�?
// urlConn.connect();
InputStream in = conn.getInputStream();
InputStreamReader inStream = new InputStreamReader(in);
BufferedReader buffer = new BufferedReader(inStream);
String strLine = null;
while ((strLine = buffer.readLine()) != null)
{
result += strLine;
}
return result;
} catch (IOException ex) {
Log.e(TAG, "PostFromWebByHttpURLConnection+ ex.getMessage()");
ex.printStackTrace();
return null;
}
}
}