private
void
doPost()
throws
IOException{
StringBuilder builder =
new
StringBuilder();
if
(bUsingProxy){
builder.append(proxy);
}
else
{
builder.append(host);
}
if
(urlpage !=
null
){
builder.append(
"/"
+ urlpage);
}
String desturl = builder.toString();
InputStream stream =
null
;
HttpURLConnection conn =
null
;
try
{
byte
[] data = params.getBytes();
URL url =
new
URL(desturl);
conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod(
"POST"
);
conn.setConnectTimeout(connectTimeout);
conn.setReadTimeout(readTimeout);
conn.setDoOutput(
true
);
conn.setUseCaches(
false
);
if
(bUsingProxy){
conn.setRequestProperty(
"X-Online-Host"
, host);
}
conn.setRequestProperty(
"Accept"
,
"text/plain"
);
conn.setRequestProperty(
"Content-Type"
,
"application/x-www-form-urlencoded"
);
conn.setRequestProperty(
"Connection"
,
"Close"
);
conn.setRequestProperty(
"Content-Length"
, String.valueOf(data.length));
conn.connect();
OutputStream outputStream = conn.getOutputStream();
outputStream.write(data);
outputStream.flush();
outputStream.close();
int
resp_code = conn.getResponseCode();
Map<String, List<String>> headerMap = conn.getHeaderFields();
listener.action(NetworkListener.RESPONSE_CODE,
new
Integer(resp_code));
if
(resp_code == HttpURLConnection.HTTP_OK){
stream = conn.getInputStream();
if
(stream !=
null
){
Log.d(
"cn.cmcc.t"
,
"GETRESPONSE:"
+ resp_code);
}
if
(mCommand != -
1
)
listener.action(NetworkListener.RECEIVE_STREAM,
new
Object[]{
new
Integer(mCommand),stream});
else
listener.action(NetworkListener.RECEIVE_STREAM, stream);
}
}
catch
(IOException e) {
e.printStackTrace();
listener.action(NetworkListener.REQUEST_TIMEOUT,
null
);
}
finally
{
if
(stream !=
null
)
stream.close();
if
(conn !=
null
)
conn.disconnect();
}
}