全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

java 中http请求为了防止乱码解决方案

java 中http请求为了防止乱码解决方案

今天做一个与地图有关的项目,需要发起http请求地图数据

写了一个工具类,希望大家都能用上吧

package com.lrdd.utils;


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
import java.util.List;
import java.util.Map;

public class HttpRequest {
  /**
   * 向指定URL发送GET方法的请求
   * 
   * @param url
   *      发送请求的URL
   * @param param
   *      请求参数,请求参数应该是 name1=value1&name2=value2 的形式。
   * @return URL 所代表远程资源的响应结果
   */
  public static String sendGet(String url, String param) {
    String result = "";
    BufferedReader in = null;
    try {
      String urlNameString = url + "?" + param;
      URL realUrl = new URL(urlNameString);
      // 打开和URL之间的连接
      URLConnection connection = realUrl.openConnection();
      // 设置通用的请求属性
      connection.setRequestProperty("accept", "*/*");
      connection.setRequestProperty("connection", "Keep-Alive");
      connection.setRequestProperty("user-agent",
          "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
      // 建立实际的连接
      connection.connect();
      // 获取所有响应头字段
      Map<String, List<String>> map = connection.getHeaderFields();
      // 遍历所有的响应头字段
      for (String key : map.keySet()) {
        System.out.println(key + "--->" + map.get(key));
      }
      // 定义 BufferedReader输入流来读取URL的响应
      in = new BufferedReader(new InputStreamReader(
          connection.getInputStream()));
      String line;
      while ((line = in.readLine()) != null) {
        result += line;
      }
    } catch (Exception e) {
      System.out.println("发送GET请求出现异常!" + e);
      e.printStackTrace();
    }
    // 使用finally块来关闭输入流
    finally {
      try {
        if (in != null) {
          in.close();
        }
      } catch (Exception e2) {
        e2.printStackTrace();
      }
    }
    return result;
  }

  /**
   * 向指定 URL 发送POST方法的请求
   * 
   * @param url
   *      发送请求的 URL
   * @param param
   *      请求参数,请求参数应该是 name1=value1&name2=value2 的形式。
   * @return 所代表远程资源的响应结果
   */
  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(new OutputStreamWriter(conn.getOutputStream(),"utf-8"));
      // 发送请求参数
      out.print(param);
      // flush输出流的缓冲
      out.flush();
      // 定义BufferedReader输入流来读取URL的响应
      in = new BufferedReader(
          new InputStreamReader(conn.getInputStream(),"utf-8"));
      String line;
      while ((line = in.readLine()) != null) {
        result += line;
      }
    } 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;
  }  
}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# java  # 中http请求为了防止乱码  # http请求  # http请求防止乱码  # Java Http请求传json数据乱码问题的解决  # HttpServletResponse乱码问题_动力节点Java学院整理  # Java中HttpServletResponse响应中文出现乱码问题  # Java Servlet响应httpServletResponse过程详解  # Java如何实现通过证书访问Https请求  # Java使用GZIP压缩导致HTTP请求返回乱码问题解决  # 应该是  # 大家都  # 遍历  # 希望能  # 做一个  # 写了  # 谢谢大家  # 为了防止  # 两行  # 上吧  # url  # param  # util  # List  # Map  # HttpRequest  # public  # sendGet  # String  # result 


相关文章: 网站制作公司广州有几家,广州尚艺美发学校网站是多少?  微网站制作教程,我微信里的网站怎么才能复制到浏览器里?  建站之星导航配置指南:自助建站与SEO优化全解析  网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?  网站制作公司,橙子建站是合法的吗?  C#怎么使用委托和事件 C# delegate与event编程方法  北京网站制作公司哪家好一点,北京租房网站有哪些?  网页设计与网站制作内容,怎样注册网站?  北京企业网站设计制作公司,北京铁路集团官方网站?  矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?  一键网站制作软件,义乌购一件代发流程?  建站之星安装路径如何正确选择及配置?  大学网站设计制作软件有哪些,如何将网站制作成自己app?  如何挑选最适合建站的高性能VPS主机?  西安专业网站制作公司有哪些,陕西省建行官方网站?  大连 网站制作,大连天途有线官网?  宝塔新建站点为何无法访问?如何排查?  如何选择靠谱的建站公司加盟品牌?  常州企业建站如何选择最佳模板?  电脑免费海报制作网站推荐,招聘海报哪个网站多?  建站主机与虚拟主机有何区别?如何选择最优方案?  专业网站制作服务公司,有哪些网站可以免费发布招聘信息?  在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?  图册素材网站设计制作软件,图册的导出方式有几种?  北京网页设计制作网站有哪些,继续教育自动播放怎么设置?  三星网站视频制作教程下载,三星w23网页如何全屏?  如何在万网开始建站?分步指南解析  电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?  如何在阿里云高效完成企业建站全流程?  免费公司网站制作软件,如何申请免费主页空间做自己的网站?  利用JavaScript实现拖拽改变元素大小  香港服务器建站指南:免备案优势与SEO优化技巧全解析  油猴 教程,油猴搜脚本为什么会网页无法显示?  宝塔面板创建网站无法访问?如何快速排查修复?  平台云上自主建站:模板化设计与智能工具打造高效网站  北京建设网站制作公司,北京古代建筑博物馆预约官网?  长沙企业网站制作哪家好,长沙水业集团官方网站?  哈尔滨网站建设策划,哈尔滨电工证查询网站?  简单实现Android验证码  武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?  大同网页,大同瑞慈医院官网?  教育培训网站制作流程,请问edu教育网站的域名怎么申请?  北京网站制作网页,网站升级改版需要多久?  制作宣传网站的软件,小红书可以宣传网站吗?  香港服务器如何优化才能显著提升网站加载速度?  网站插件制作软件免费下载,网页视频怎么下到本地插件?  C++如何将C风格字符串(char*)转换为std::string?(代码示例)  如何通过可视化优化提升建站效果?  宠物网站制作html代码,有没有专门介绍宠物如何养的网站啊?  制作充值网站的软件,做人力招聘为什么要自己交端口钱? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。