java实现指定url 发送数据,并且接收回复消息

该Java代码展示了如何向指定URL发送POST请求,设置请求头,并处理返回的响应内容。通过创建`URLConnection`,设置输出流发送参数,然后读取输入流获取响应数据。
package com.send;


import java.io.*;
import java.net.*;
import java.util.*;


public class SendPostController {
/**
   * 向指定URL发送POST方法的请求
   * @param url 发送请求的URL
   * @param param 请求参数,请求参数应该是name1=value1&name2=value2的形式。
   * @return URL所代表远程资源的响应
   */
public static String sendPost(String url,String param)
  {
   PrintWriter out = null;
   BufferedReader in = null;
   String result = "";
   try
   {
    URL realUrl = new URL(url);
    //打开和URL之间的连接
    URLConnection conn = realUrl.openConnection();
    //设置通用的请求属性
    conn.setRequestProperty("accept", "*/*"); 
    conn.setRequestProperty("connection", "Keep-Alive"); 
    conn.setRequestProperty("user-agent", 
      "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"); 
    //发送POST请求必须设置如下两行
    conn.setDoOutput(true);
    conn.setDoInput(true);
    
    //获取URLConnection对象对应的输出流
    out = new PrintWriter(conn.getOutputStream());
    //发送请求参数
    out.print(param);
    //flush输出流的缓冲
    out.flush();
    //定义BufferedReader输入流来读取URL的响应
    in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
    String line;
    StringBuffer resultDate = new StringBuffer();
    while ((line = in.readLine())!= null)
    {
     result += "/n" + line;
     resultDate.append(line.trim());
     System.out.println(resultDate);
    }
   }catch(Exception e){
    System.out.println("发送POST请求出现异常!" + e);
    e.printStackTrace();
   }
   //使用finally块来关闭输出流、输入流
    finally{
     try{
        if (out != null){
         out.close();
        }
       if (in != null){
         in.close();
       }
     }catch (IOException ex){
       ex.printStackTrace();
    }
  }
   return result;
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值