网络传送数据
//将字符串加密到服务端,并从服务端获得相应的数据
public class DataTransfer implements Runable{
public Static String sendData(String s,String urlStr){
try{
//根据服务端的地址创建URL对象
URL url=new URL(urlSTR);
//打开与服务端的HTTP连接
HttpURLConnect http=(HttpURLConnection)url.openConnection();
//允许从服务端读数据
http.setDoInput(true);
//允许从服务端写数据
http.setDoOutput(true);
//关闭数据缓存
http.setDefaultUseCaches(false);
//设置为POST请求
http.setRequestMethod("POST");
//对要发送的字符串加密
String data=EncryptDectypt.simpleEncrypt(s);
//向服务端发送的数据以“data”作为key
//以便服务端可以通过“data”获取客户端的字符串
data="data"+data;
//获取服务端的outputsteam对象,通过该对象可以向服务端发送数据
OutputStream os=http.getOutputStream();
//向服务端发送数据
os.write(data.getBytes());
//将缓冲区的数据发送到服务端
os.flush();
//创建可以从服务端读取数据的InputStream对象
InputStream is=http.getInputStream();
//由于服务端返回的数据是utf-8格式,因此 ,需要用
//inputstreamReader对象按照urf-8格式对数据进行编码
InputStreamReader isr=new InputStreamReader(is,"utf-8");
BufferReader br=new BufferReader(isr);
//服务端只会返回一行数据,因此只需要杜一行即可
String result=br.readLine();
//截取返回字符串的前后空格,并返回该字符串
return result.trim();
}catch(Exception e){
}
}
}