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. android开发学习--网络请求框架RxJava+Retrofit

    看了好多的博客,终于弄清楚了Rxjava和Retrofit,给大家推荐几个不错的文章: https://gank.io/post/56e80c2c677659311bed9841 这个文章是只用Ret ...

  2. jsp中非空判断

    function中uname要和id的值相匹配,但是这样不专业,要显示我的专业性,我将使用document获得name的值来判断是否为空,应为这样是专业的写法,我要时刻记住我是专业的 <scri ...

  3. AJPFX:如何保证对象唯一性呢?

    思想: 1,不让其他程序创建该类对象. 2,在本类中创建一个本类对象. 3,对外提供方法,让其他程序获取这个对象. 步骤: 1,因为创建对象都需要构造函数初始化,只要将本类中的构造函数私有化,其他程序 ...

  4. actuator服务实战

    1. actuator服务实战 1.1. 前言 actuator默认集成了很多端点查看,这里我会挑选也用到可能性大些的 1.2. Endpoints 1.2.1. 使用方式 开启服务后,直接访问:lo ...

  5. 用js的eval函数模拟Web API中的onclick事件

    在检查组内小伙伴提交的tabToggler插件的js代码时,发现了onclick的如下用法: el.onclick = function(){ //按钮样式切换 for(var i=0;i<ob ...

  6. Godaddy域名301跳转问题处理

    前言:Godaddy的域名301跳转一共有六步,详情见以下步骤: 第一步: 第二步:找到你的域名,并点击DNS 第三步:点击添加 第四步:添加解析ip地址 第五步:域名转址,也就是301跳转 第六步: ...

  7. iOS Programming UINavigationController

    iOS Programming UINavigationController the Settings application has multiple related screens of info ...

  8. rabiitmq

    Rabbitmq集群高可用 RabbitMQ是用erlang开发的,集群非常方便,因为erlang天生就是一门分布式语言,但其本身并不支持负载均衡. Rabbit模式大概分为以下三种:单一模式.普通模 ...

  9. JS 中的 JSON

    JSON是JavaScript Object Notation的缩写,它是一种数据交换格式. 在JSON出现之前,大家一直用XML来传递数据.因为XML是一种纯文本格式,所以它适合在网络上交换数据.X ...

  10. MySQL for Mac 终端操作说明

    mysql for mac 终端操作说明MySQL服务开启Mac版mysql可以从设置里启动服务: 如果想要在终端(Terminal)中操作mysql,需要先添加mysql路径,在此以zsh为例: # ...