• Java网络编程注意事项3


    如何使用POST请求和GET请求Web网站发送请求,下面的参考代码:

    import java.io.BufferedReader;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.net.URL;
    import java.net.URLConnection;
    
    public class GetTest {
    	private String url;
    	private String param;
    	/**
    	 * 
    	 * @param url  发送请求的URL
    	 * @param param 请求參数,格式满足name1=value1&name2=value2的形式
    	 */
    	public GetTest(String url,String param){
    		this.url=url;
    		this.param=param;
    	}
    	public String sendGet() throws Exception{
    		String result="";
    		String urlName=url+"?"+param;
    		URL surl=new URL(urlName);
    		//打开和URL之间的连接
    		URLConnection conn=surl.openConnection();
    		//设置通用的请求属性
    		conn.setRequestProperty("accept", "*/*");
    		conn.setRequestProperty("connection", "Keep-Alive");
    		//建立实际的连接
    		conn.connect();
    		//定义字节流
    		InputStream is=conn.getInputStream();
    		//包装字符流
    		InputStreamReader isr=new InputStreamReader(is,"utf-8");
    		//增加缓冲区
    		BufferedReader br=new BufferedReader(isr);
    		String line;
    		while(null!=(line=br.readLine())){
    			result+=line;
    		}
    		br.close();
    		isr.close();
    		is.close();
    		return result;
    	}
    }

    import java.io.BufferedReader;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.PrintWriter;
    import java.net.URL;
    import java.net.URLConnection;
    
    public class PostTest {
    	private String url;
    	private String param;
    	/**
    	 * 
    	 * @param url  发送请求的URL
    	 * @param param 请求參数,格式满足name1=value1&name2=value2的形式
    	 */
    	public PostTest(String url,String param){
    		this.url=url;
    		this.param=param;
    	}
    	public String sendGet() throws Exception{
    		String result="";
    		URL surl=new URL(url);
    		//打开和URL之间的连接
    		URLConnection conn=surl.openConnection();
    		//设置通用的请求属性
    		conn.setRequestProperty("accept", "*/*");
    		conn.setRequestProperty("connection", "Keep-Alive");
    		//发送POST请求必须设置例如以下两行
    		conn.setDoOutput(true);
    		conn.setDoInput(true);
    		
    		PrintWriter pw=new PrintWriter(conn.getOutputStream());
    		//发送请求
    		pw.print(param);
    		pw.flush();
    		
    		//定义字节流
    		InputStream is=conn.getInputStream();
    		//包装字符流
    		InputStreamReader isr=new InputStreamReader(is,"utf-8");
    		//增加缓冲区
    		BufferedReader br=new BufferedReader(isr);
    		String line;
    		while(null!=(line=br.readLine())){
    			result+=line;
    		}
    		br.close();
    		isr.close();
    		is.close();
    		return result;
    	}
    }

    转载请注明出处:http://blog.csdn.net/hai_qing_xu_kong/article/details/40784691     情绪控_ 

    版权声明:本文博主原创文章。博客,未经同意不得转载。

  • 相关阅读:
    《京东峰值系统设计》读后感
    《王者荣耀游戏服务器架构演进(完整版)》读后感
    《秒杀系统架构分析与实战》读后感
    《阿里如何实现秒级百万TPS?搜索离线大数据平台架构解读》读后感
    《阿里游戏高可用架构设计实践》读后感
    Spark SQL 编程初级实践
    系统质量属性之——性能
    《信息技术手册查重错误比对分析》开发记录7
    《信息技术手册查重错误比对分析》开发记录6
    【Codeforces Round #589 (Div. 2) D】Complete Tripartite
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/4845921.html
Copyright © 2020-2023  润新知