通过网络提交数据到服务器
使用get和post向服务器提交数据、多线程断点下载
http的get和post协议向服务器提交数据
1 使用GET方式向服务器端提交数据
- 原理:把要提交是数据组拼到Url后面
- 缺点:不安全
- 优点:代码书写简单
2 使用POST方式向服务器端提交数据
- 缺点:代码书写复杂
优点:安全
/** * 1. 在子线程中进行网络通讯 * 2. 把流转成字符串 * 3. 用土司把服务器返回的结果弹出(handler) */ public void login(View v) { qq = etQQ.getText().toString().trim(); pwd = etPwd.getText().toString().trim(); // 开启子线程 new Thread() { public void run() { try { //(1)请求的Url不一样 String path = "http://192.168.3.100:8080/web/LoginServlet"; // 1. 写一个Url URL url = new URL(path); // 2. 打开连接 HttpURLConnection conn = (HttpURLConnection) url .openConnection(); // 3. 设置请求方式 //(2)请求方法不一样 conn.setRequestMethod("POST"); conn.setConnectTimeout(3000); //(3)多了两个请求头 String data = "qq="+qq+"&pwd="+pwd; conn.setRequestProperty("Content-Length", String.valueOf(data.length())); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); //(4)以二进制流的方式把数据写到服务器 //重要,声明要给服务器写数据 conn.setDoOutput(true); conn.getOutputStream().write(data.getBytes()); // 4. 获取状态吗 int code = conn.getResponseCode(); if (code == 200) { // 5. 获取服务器返回的输入流 InputStream is = con