package com.ecar.eoc.content.platform.utils;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import org.apache.log4j.Logger;

import com.ecar.commons.cmf.util.PropertiesUtil;
import com.ecar.rtplt.component.web.HttpRequester;
import com.ecar.rtplt.component.web.HttpResponser;

public class RestUtil
{
private static Logger logger = Logger.getLogger(RestUtil.class);
/**
*
* @Title: getRestContent
* @Description: TODO(获取rest返回的内容)
* @param url
* @param map
* @return
* @throws IOException
* @author yuqidi
* @date 2015-4-27 下午07:30:03
* @version V1.0
*/
public static String getRestContent(String url, Map<String, String> map) throws IOException
{
HttpRequester request = new HttpRequester();
request.setDefaultContentEncoding("utf-8");
Map<String, String> properties = new HashMap<String, String>();
properties.put("Content-type", "application/x-www-form-urlencoded; charset=utf-8");

if (logger.isInfoEnabled())
{
logger.info(new StringBuffer("url=").append(url).append(new org.json.JSONObject(map)));
}

HttpResponser responser = request.sendPost(url, map, properties);

return responser.getContent();
}
/**
* base 64 MD5 加密算法
* @Title: judgeToken
* @Description: TODO(这里用一句话描述这个方法的作用)
* @param: @param map
* @param: @param appKey
* @param: @param nonce
* @param: @param timestamp
* @param: @param sign
* @param: @return
* @return: Boolean
* @throws
* @author ecar
* @Date 2016-5-20 上午11:10:46
*/
public static Boolean judgeToken(Map<Object, Object> map, String appKey, String nonce, Long timestamp, String sign)
{

String appSrect = PropertiesUtil.getValueString("ep023_SECRET_KEY", "D90C8B17FB4FBD6442FDEC51C735E91C");
return AuthSigHelpter.authSig(appKey, appSrect, timestamp, nonce, map, sign);
}

/**
* get请求
* @Title: getRestContent_get
* @Description: TODO(这里用一句话描述这个方法的作用)
* @param: @param url
* @param: @param map
* @param: @return
* @param: @throws IOException
* @return: String
* @throws
* @author ecar
* @Date 2016-7-11 下午07:32:02
*/
public static String getRestContent_get(String url) throws IOException
{
HttpRequester request = new HttpRequester();
request.setDefaultContentEncoding("utf-8");
Map<String, String> properties = new HashMap<String, String>();
properties.put("Content-type", "application/x-www-form-urlencoded; charset=utf-8");

if (logger.isInfoEnabled())
{
logger.info(new StringBuffer("url=").append(url));
}

HttpResponser responser = request.sendGet(url);

return responser.getContent();
}
}

封装java-get-post请求方式的更多相关文章

  1. java 的http请求方式:HttpURLConnection和HttpClient

    1.要了解一些概念性的东西,比如Http的协议以及协议头等一些东东 2.HttpURLConnection一般步骤:创建URL对象==>获取URL的HttpURLConnection对象实例== ...

  2. JAVA模拟各种请求方式访问RESTFUL

    //打开restful链接 HttpURLConnection conn = (HttpURLConnection) url.openConnection(); // 提交模式 conn.setReq ...

  3. 第三篇 :微信公众平台开发实战Java版之请求消息,响应消息以及事件消息类的封装

    微信服务器和第三方服务器之间究竟是通过什么方式进行对话的? 下面,我们先看下图: 其实我们可以简单的理解: (1)首先,用户向微信服务器发送消息: (2)微信服务器接收到用户的消息处理之后,通过开发者 ...

  4. Java实现Http请求的常用方式

    一.使用Java自带的java.io和java.net包. 实现方式如下: public class HttpClient { //1.doGet方法 public static String doG ...

  5. java实现HTTP请求的三种方式

    目前JAVA实现HTTP请求的方法用的最多的有两种:一种是通过HTTPClient这种第三方的开源框架去实现.HTTPClient对HTTP的封装性比较不错,通过它基本上能够满足我们大部分的需求,Ht ...

  6. 【转载】java实现HTTP请求的三种方式

    目前JAVA实现HTTP请求的方法用的最多的有两种:一种是通过HTTPClient这种第三方的开源框架去实现.HTTPClient对HTTP的封装性比较不错,通过它基本上能够满足我们大部分的需求,Ht ...

  7. HTTP:Java实现HTTP请求的三种方式

    目前JAVA实现HTTP请求的方法用的最多的有两种: 一种是通过HTTPClient这种第三方的开源框架去实现.HTTPClient对HTTP的封装性比较不错,通过它基本上能够满足我们大部分的需求,H ...

  8. vue中axios 配置请求拦截功能 及请求方式如何封装

    main.js 中: import axios from '................/axios' axios.js 中: //axios.js import Vue from 'vue' i ...

  9. 一个java的http请求的封装工具类

    java实现http请求的方法常用有两种,一种则是通过java自带的标准类HttpURLConnection去实现,另一种是通过apache的httpclient去实现.本文用httpclient去实 ...

  10. Java Web之请求和响应

    Servlet最主要作用就是处理客户端请求并作出回应,为此,针对每次请求,Web容器在调用service()之前都会创建两个对象,分别是HttpServletRequest和HttpServletRe ...

随机推荐

  1. spring实现模板文件下载

    前台 <form id="batchModel0" method="post" action="/common/download-file&qu ...

  2. CF915C Permute Digits

    思路: 从左到右贪心放置数字,要注意判断这个数字能否放置在当前位. 实现: #include <bits/stdc++.h> using namespace std; typedef lo ...

  3. http的请求与响应-----content-type

    content-type 指请求消息头的中请求消息数据的格式 有三种用法 第一种:设置在request header的参数中 js中可以在发送请求前在请求消息头中设置content-typevar x ...

  4. 5-Java-C(调和级数)

    题目描述: 1/1 + 1/2 + 1/3 + 1/4 + ... 在数学上称为调和级数. 它是发散的,也就是说,只要加上足够多的项,就可以得到任意大的数字. 但是,它发散的很慢: 前1项和达到 1. ...

  5. cce - 控制台中文环境

    语法 (SYNTAX) cce [-e program] 描述 (DESCRIPTION) 该程序是一个类似于 WZCE , yact 和 chdrv 的控制台中文平台.进入该环境后可以用“空格 + ...

  6. PHP笔录(韩顺平)

    这里记录下韩顺平视频学习记录 http://www.php.cn/code/11753.html

  7. hibernate5.3版本出现hibernate中The server time zone value“乱码”问题的解决办法。

    <!-- 配置关于数据库连接的四个项 driverClass url username password --> <property name="hibernate.con ...

  8. window10换系统为windows7

    第一步 第二步 第三步 下载系统:http://www.dnxtc.net 1.GHO镜像安装器和WIN7,GHO文件必须一起放在除C盘外的其他盘的根目录 2.“GHO镜像安装器“工具上右键管理员方式 ...

  9. selenium webdriver 常用断言

    断言常用的有: assertLocation(判断当前是在正确的页面). assertTitle(检查当前页面的title是否正确). assertValue(检查input的值, checkbox或 ...

  10. 问题:hdfs管理界面:Summary部分,Configured Capacity: 0 B

    hdfs管理界面:Summary部分,Configured Capacity: 0 B.正常应该不是0,而是显示系统分配给hdfs的剩余容量. 原因:NameNode的clusterID和DataNo ...