package com.miaodiyun.httpApiDemo.common;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.URL;
import java.net.URLConnection;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.commons.codec.digest.DigestUtils;
/**
* http请求工具
*/
public class HttpUtil
{
/**
* 构造通用参数timestamp、sig和respDataType
*
* @return
*/
public static String createCommonParam()
{
// 时间戳
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
String timestamp = sdf.format(new Date());
// 签名
String sig = DigestUtils.md5Hex(Config.ACCOUNT_SID + Config.AUTH_TOKEN + timestamp);
return "×tamp=" + timestamp + "&sig=" + sig + "&respDataType=" + Config.RESP_DATA_TYPE;
}
/**
* post请求
*
* @param url
* 功能和操作
* @param body
* 要post的数据
* @return
* @throws IOException
*/
public static String post(String url, String body)
{
System.out.println("url:" + System.lineSeparator() + url);
System.out.println("body:" + System.lineSeparator() + body);
String result = "";
try
{
OutputStreamWriter out = null;
BufferedReader in = null;
URL realUrl = new URL(url);
URLConnection conn = realUrl.openConnection();
// 设置连接参数
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setConnectTimeout(5000);
conn.setReadTimeout(20000);
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
// 提交数据
out = new OutputStreamWriter(conn.getOutputStream(), "UTF-8");
out.write(body);
out.flush();
// 读取返回数据
in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));
String line = "";
boolean firstLine = true; // 读第一行不加换行符
while ((line = in.readLine()) != null)
{
if (firstLine)
{
firstLine = false;
} else
{
result += System.lineSeparator();
}
result += line;
}
} catch (Exception e)
{
e.printStackTrace();
}
return result;
}
/**
* 回调测试工具方法
*
* @param url
* @param reqStr
* @return
*/
public static String postHuiDiao(String url, String body)
{
String result = "";
try
{
OutputStreamWriter out = null;
BufferedReader in = null;
URL realUrl = new URL(url);
URLConnection conn = realUrl.openConnection();
// 设置连接参数
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setConnectTimeout(5000);
conn.setReadTimeout(20000);
// 提交数据
out = new OutputStreamWriter(conn.getOutputStream(), "UTF-8");
out.write(body);
out.flush();
// 读取返回数据
in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));
String line = "";
boolean firstLine = true; // 读第一行不加换行符
while ((line = in.readLine()) != null)
{
if (firstLine)
{
firstLine = false;
} else
{
result += System.lineSeparator();
}
result += line;
}
} catch (Exception e)
{
e.printStackTrace();
}
return result;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
javaHttpApiDemo.zip (67个子文件)
javaHttpApiDemo
src
com
miaodiyun
huiDiao
entity
ReceNoticeResp.java 245B
ReceNoticeReq.java 1KB
VoiceBackRep.java 2KB
MoNoticeResp.java 243B
VoiceBackResp.java 244B
MoNoticeReq.java 1KB
MoNotice.java 2KB
RespCode.java 233B
ReceNotice.java 2KB
VoiceBack.java 3KB
httpApiDemo
VoiceCode.java 1KB
AccountInfo.java 760B
IndustrySMS.java 1KB
AffMarkSMS.java 1KB
Test.java 361B
common
Config.java 653B
HttpUtil.java 3KB
.classpath 593B
build
classes
com
miaodiyun
huiDiao
entity
VoiceBackRep.class 2KB
ReceNoticeResp.class 587B
MoNoticeReq.class 1KB
ReceNoticeReq.class 2KB
VoiceBackResp.class 584B
MoNoticeResp.class 581B
VoiceBack.class 3KB
RespCode.class 407B
ReceNotice.class 3KB
MoNotice.class 3KB
httpApiDemo
AffMarkSMS.class 2KB
AccountInfo.class 1KB
IndustrySMS.class 2KB
VoiceCode.class 2KB
common
Config.class 586B
HttpUtil.class 3KB
Test.class 407B
.settings
org.eclipse.wst.jsdt.ui.superType.container 49B
org.eclipse.wst.common.project.facet.core.xml 305B
org.eclipse.wst.jsdt.ui.superType.name 6B
org.eclipse.wst.common.component 497B
.jsdtscope 491B
org.eclipse.jdt.core.prefs 670B
WebContent
META-INF
MANIFEST.MF 39B
WEB-INF
lib
gson-2.0.jar 198KB
el-api.jar 54KB
jasper.jar 589KB
catalina-tribes.jar 251KB
commons-codec-1.9.jar 258KB
tomcat-i18n-ja.jar 46KB
websocket-api.jar 35KB
servlet-api.jar 193KB
annotations-api.jar 16KB
tomcat-coyote.jar 749KB
catalina-ha.jar 130KB
tomcat-i18n-fr.jar 43KB
jsp-api.jar 86KB
ecj-4.4.jar 2.19MB
tomcat-api.jar 6KB
jasper-el.jar 121KB
tomcat-util.jar 31KB
catalina-ant.jar 52KB
catalina.jar 1.52MB
tomcat-i18n-es.jar 70KB
tomcat-jdbc.jar 123KB
tomcat7-websocket.jar 195KB
tomcat-dbcp.jar 229KB
web.xml 720B
.project 1KB
共 67 条
- 1
资源评论
- weixin_409480412018-11-14maven包啊,上哪找啊
- 发了个版2019-08-02不能用阿a啊
- 30757630072018-10-08maven项目需要那些包
hello-java-maker
- 粉丝: 5w+
- 资源: 19
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功