android网络编程 一(HttpURLConnection)
来源:互联网 发布:历年gdp三大产业数据 编辑:程序博客网 时间:2024/05/17 02:37
网络编程首先把清单文件中配上再说:
<uses-permission android:name="android.permission.INTERNET"/>
我先列出服务器端的部分代码:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub request.setCharacterEncoding("utf-8"); response.setCharacterEncoding("utf-8"); System.out.println("进入get方法"); String name = request.getParameter("name"); String age = request.getParameter("age"); System.out.println("name=" + name + ",age=" + age); PrintWriter writer = response.getWriter(); writer.write("Get : name,age send 成功"); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub request.setCharacterEncoding("utf-8"); response.setCharacterEncoding("utf-8"); System.out.println("进入post方法"); String name = request.getParameter("name"); String age = request.getParameter("age"); System.out.println("name=" + name + ",age=" + age); PrintWriter writer = response.getWriter(); writer.write("Post : name,age send 成功"); }
这里讲的Http通信是用HttpURLConnection连接服务器
android端代码(get,post两种请求方式):
new Thread(new Runnable() { @Override public void run() { // TODO Auto-generated method stub// String path = "http://192.168.0.167:8080/TestAndroid/testServlet"; String path = "http://192.168.1.100:8080/TestAndroid/testServlet?name=zhangsan&age=23"; try { URL url = new URL(path); HttpURLConnection urlConn = (HttpURLConnection) url.openConnection(); //设置参数 //post情况下需要设置DoOutput为true,默认为false urlConn.setDoInput(true);//默认为true urlConn.setDoOutput(true); urlConn.setRequestMethod("GET");// urlConn.setRequestMethod("POST");// urlConn.setUseCaches(false); //设置content-type// urlConn.setRequestProperty("Content-type", "application/x-www-form-urlencoded"); urlConn.setConnectTimeout(3000); urlConn.setReadTimeout(3000); /*//获得输出流,便于向服务器发送信息 DataOutputStream dos = new DataOutputStream(urlConn.getOutputStream()); //往流里面写请求参数 //post请求 dos.writeBytes("name=" + URLEncoder.encode("zhangsan", "utf-8")); dos.writeBytes("&age=" + URLEncoder.encode("23", "utf-8")); dos.flush(); dos.close(); */ //获得输入流,取数据 BufferedReader reader = new BufferedReader(new InputStreamReader(urlConn.getInputStream())); String buffer = null; StringBuffer sb = new StringBuffer(); while ((buffer = reader.readLine()) != null) { sb.append(buffer); } reader.close(); urlConn.disconnect(); Log.e("服务器数据", sb.toString()); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }).start();
0 0
- android网络编程-HttpURLConnection(一)
- android网络编程 一(HttpURLConnection)
- Android网络编程---HttpURLConnection
- HttpURLConnection----Android网络编程
- Android网络编程(二)HttpURLConnection
- Android 网络编程(三)HttpURLConnection
- Android 网络请求(一)HttpURLConnection+OkHttp
- Android网络编程之HttpURLConnection
- Android网络编程之HttpURLConnection
- Android网络编程之HttpUrlConnection
- Android应用层(网络编程)二(HttpClient、HttpURLConnection)
- Android网络编程(上)--- URL与HttpURLConnection
- Android之网络编程(二)使用 HttpURLConnection
- Android网络编程(二)HttpClient与HttpURLConnection
- Android 网络编程(2): HttpClient与HttpURLConnection
- Android网络编程(二)HttpClient与HttpURLConnection
- Android HTTP网络通信(一):使用HttpURLConnection、HttpClient
- Android网络请求之HttpURLConnection小结(一)
- 动态规划-最长公共子序列
- python socket网络编程
- SqlServer中decimal(numeric )、float 和 real 数据类型的区别
- [leetcode]Find Peak Element
- java函数重载
- android网络编程 一(HttpURLConnection)
- Linux内核构建系统之七
- 利用BBRSACryptor实现iOS端的RSA加解密
- Android客户端和服务端如何使用Token和Session
- 动态规划-最优二叉搜索树
- Ionic build android Error code 1
- bzoj1189: [HNOI2007]紧急疏散evacuate
- 存储器RAM ROM FLASH介绍
- LeakCanary开源项目(使用及原理github项目文档的翻译)