• android中利用HttpURLConnection进行Get、Post和Session读取页面。


    直接上代码,调用的时候要放在线程中。

    package slj.getsms;
    
    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.io.OutputStream;
    import java.net.HttpURLConnection;
    import java.net.URL;
    import java.io.IOException;
    
    public class sljWork {
    	public static String GetDataFromKC(String loginUrl,String loginParam,String indexUrl)
    	{
    		byte[] btParam=loginParam.getBytes();
    		try{
    			URL url=new URL(loginUrl);
    			HttpURLConnection conn=(HttpURLConnection)url.openConnection();
    			conn.setConnectTimeout(3000);
    			conn.setRequestMethod("POST");
    			conn.setInstanceFollowRedirects(false);
    			OutputStream outStream=conn.getOutputStream();
    			outStream.write(btParam);
    			conn.connect();
    			String[] backHeader=conn.getHeaderField("Location").split(";");
    			String sessionId="user_login_id=dddd; "+backHeader[1].toUpperCase();
    			URL nextUrl=new URL(indexUrl);
    			HttpURLConnection nextConn=(HttpURLConnection)nextUrl.openConnection();
    			nextConn.addRequestProperty("Cookie",sessionId);
    			nextConn.connect();
    			BufferedReader bufReader=new BufferedReader(new InputStreamReader(nextConn.getInputStream(),"GBK"));
    			String backData="";
    			String line="";
    			while((line=bufReader.readLine())!=null)
    				backData+=line+"
    ";
    			return backData;
    		}catch (IOException e){
    			return "ErrorInfo:"+e.getMessage().toString();
    		}
    	}
    	public static String GetDataByPost(String strUrl)
    	{
    		byte[] btPostData=new String("pname=slj&ppass=slj").getBytes();
    		try{
    			URL url=new URL(strUrl);
    			HttpURLConnection conn=(HttpURLConnection)url.openConnection();
    			conn.setConnectTimeout(3000);
    			conn.setRequestMethod("POST");
    			conn.setInstanceFollowRedirects(false);
    			OutputStream outStream=conn.getOutputStream();
    			outStream.write(btPostData);
    			conn.connect();
    			BufferedReader bufReader=new BufferedReader(new InputStreamReader(conn.getInputStream(),"utf-8"));
    			String backData="";
    			String line="";
    			while((line=bufReader.readLine())!=null)
    				backData+=line+"
    ";
    			return backData;
    		}catch(IOException e){
    			return "ErrorInfo:"+e.getMessage().toString();
    		}
    	}
    	public static String GetDataByGet(String strUrl)
    	{
    		try{
    			URL url=new URL(strUrl);
    			HttpURLConnection conn=(HttpURLConnection)url.openConnection();
    			conn.setConnectTimeout(3000);
    			conn.setRequestMethod("GET");
    			conn.connect();
    			BufferedReader bufReader=new BufferedReader(new InputStreamReader(conn.getInputStream(),"utf-8"));
    			String backData="";
    			String line="";
    			while((line=bufReader.readLine())!=null)
    				backData+=line+"
    ";
    			return backData;
    		}catch(IOException e){
    			return "ErrorInfo:"+e.getMessage().toString();
    		}
    	}
    }
    
  • 相关阅读:
    SQL Server 2005高级程序设计
    SQL语言艺术
    无益的程序
    Django Ajax动态图形监控
    C/C++ Qt 基本文件读写方法
    Django 实现统计网站访问状态
    Python 实现 WebSocket 通信
    Django Admin后台定制简单监控页
    Django Ajax 实现Web命令行执行
    C/C++ Qt QThread 线程组件应用
  • 原文地址:https://www.cnblogs.com/ddddfpxx/p/6329407.html
Copyright © 2020-2023  润新知