Android万能GetリクエストJsonメソッド
2667 ワード
package com.example.h3c.net;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.ConnectException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import android.util.Log;
import com.example.pickride.util.ConstantsTable;
public class HttpConnection {
private final int TIMEOUT = 3000;//
/**
*
*
* @param requestType
* requestContent [ , , , ]
*/
public String requestService(String requestType, String... requestContent) {
String resultData = "";
InputStreamReader in = null;
HttpURLConnection urlConn = null;
BufferedReader buffer = null;
try {
StringBuffer sBuffer = new StringBuffer();
for (int n = 0; n < requestContent.length; n++) {
if ((n + 1) % 2 == 0) {
sBuffer.append("=" + requestContent[n] + "&");
} else {
sBuffer.append(requestContent[n]);
}
}
URL url = new URL(ConstantsTable.URI + requestType + "?" + sBuffer);
if (url != null) {
urlConn = (HttpURLConnection) url.openConnection();
urlConn.setConnectTimeout(TIMEOUT);//
try {
in = new InputStreamReader(urlConn.getInputStream());
} catch (ConnectException e) {
Log.e(ConstantsTable.LOG_TAG, " ...");
return resultData;
}
buffer = new BufferedReader(in);
String inputLine = null;
while ((inputLine = buffer.readLine()) != null) {
resultData += inputLine + "
";
}
urlConn.disconnect();
if (ConstantsTable.DEBUG_FLAG) {
Log.d(ConstantsTable.LOG_TAG, resultData);
}
}
} catch (MalformedURLException e) {
Log.e(ConstantsTable.LOG_TAG, " ");
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (in != null) {
in.close();
}
if (buffer != null) {
buffer.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return resultData;
}
}