public class TestResourceCommentRestController {
private final static String API_URI_DEBUG = "http://localhost:8080/wodm-api/api/v1";
public static final int HASH_INTERATIONS = 1024;
private static boolean FLAG_DEBUG = true; public static void main(String[] args) {
testComment();
// System.out.println("makeAppkey="+Strings.makeAppkey());
// makeAppkey();
// String[] chars = null;
// chars = Lists.newArrayList("").toArray(chars);
// for (int i = 0; i < 10; i++) {
// System.out.println("["+i+"]"+RandomStringUtils.random(32, "abcdefghijklmnopqrstuvwlyz0123456789"));
// } } public static void makeAppkey(){
System.out.println(RandomStringUtils.random(32, "abcdefghijklmnopqrstuvwlyz0123456789"));
} public static void testComment(){
String httpUrl = null; if(FLAG_DEBUG){
httpUrl = API_URI_DEBUG + "/comment/reply";
}else { httpUrl = API_URI + "/comment"; }
String postBody = null; //ResourceCommentDTO1 dto = new ResourceCommentDTO1();
JSONObject object=new JSONObject();
for(long i = 584 ;i < 585 ; i++){
object.put("sendId", 449L);
object.put("content", "回复222222!");
object.put("receiveId", 457l);
object.put("parentId", 1877l);
object.put("commentId", 1877l);
object.put("type", 1);
object.put("resourceId",i); /*dto.setResourceId(i);
dto.setSendId(147L);
dto.setContent("回复222222!");
dto.setParentId(322l);*/
//List<Long> list=new ArrayList<Long>();
/*list.add(143l);
list.add(438l);*/
//dto.setReceiveIds(list);
//object.put("receiveIds", list);
postBody = JSON.toJSONString(object);
//postBody = JSON.toJSONString(dto);
System.out.println("---"+postBody);
String respBody = httpPost(httpUrl, postBody);
System.out.println("respBody="+respBody);
} } private static String httpPost(String httpUrl, String body) {
URL remoteUrl = null;
OutputStreamWriter wr = null;
InputStream is = null;
BufferedReader reader = null;
try {
URLConnection conn = null;
remoteUrl = new URL(httpUrl);
conn = remoteUrl.openConnection();
conn.setDoOutput(true);
conn.setConnectTimeout(5 * 1000);// time out 5s conn.setRequestProperty("Content-Type", "application/json"); // conn.setRequestProperty("Accept",
// "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
//
// conn.setRequestProperty("Accept",
// "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
// conn.setRequestProperty("Accept-Language", "en-us,en;q=0.5");
// conn.setRequestProperty("Connection", "keep-alive");
// conn.setRequestProperty(
// "User-Agent",
// "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:13.0) Gecko/20100101 Firefox/13.0.1");
wr = new OutputStreamWriter(conn.getOutputStream());
wr.write(body);
wr.flush();
is = conn.getInputStream();
reader = new BufferedReader(new InputStreamReader(is, "UTF-8"));
// response
StringBuffer responseBody = new StringBuffer();
String responseStr = null;
while ((responseStr = reader.readLine()) != null) {
if (responseBody.length() > 0) {
responseBody.append("\r\n");
}
responseBody.append(responseStr);
}
return responseBody.toString();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
return null;
} }
  

post请求测试代码的更多相关文章

  1. 在内核中异步请求设备固件firmware的测试代码

    在内核中异步请求设备固件firmware的测试代码 static void ghost_load_firmware_callback(const struct firmware *fw, void * ...

  2. 在Jmeter中使用自定义编写的Java测试代码

    我们在做性能测试时,有时需要自己编写测试脚本,很多测试工具都支持自定义编写测试脚本,比如LoadRunner就有很多自定义脚本的协议,比如"C Vuser","Java ...

  3. 利用python httplib模块 发送Post请求测试web服务是否正常起来!

    最近在学习python,恰好老大最近让我搞个基于post请求测试web服务是否正常启用的小监控,上网查了下资料,发现强大的Python恰好能够用上,所以自己现学现卖,顺便锻炼下自己. 由于本人也刚接触 ...

  4. 全--教程API, gem 'rest-client'(用于发简单请求); 请求测试;

    安装:rest-client4400✨ gem install rest-client 一个简单的HTTP和REST client for Ruby. 可以用它来发HTTP请求 基本用法: requi ...

  5. 自定义编写jmeter的Java测试代码

    我们在做性能测试时,有时需要自己编写测试脚本,很多测试工具都支持自定义编写测试脚本,比如LoadRunner就有很多自定义脚本的协议,比如"C Vuser","JavaV ...

  6. Java&Selenium自动化测试实现页面元素、页面对象及测试代码分离

    一.摘要 本篇博文将介绍自动化测试实现页面元素.页面对象及测试代码分离在自动化框架中的实现 二.解析页面元素定位信息 首先,将页面元素与实际的代码分离,首先我们将页面元素定位信息和定位表达式保存在属性 ...

  7. 使用 TypeScript & mocha & chai 写测试代码实战(17 个视频)

    使用 TypeScript & mocha & chai 写测试代码实战(17 个视频) 使用 TypeScript & mocha & chai 写测试代码实战 #1 ...

  8. .NET单元测试的艺术-3.测试代码

    开篇:上一篇我们学习单元测试和核心技术:存根.模拟对象和隔离框架,它们是我们进行高质量单元测试的技术基础.本篇会集中在管理和组织单元测试的技术,以及如何确保在真实项目中进行高质量的单元测试. 系列目录 ...

  9. mysql锁 实战测试代码

    存储引擎 支持的锁定 MyISAM 表级锁 MEMORY 表级锁 InnoDB 行级锁 BDB 页面锁 表级锁:开销小,加锁快:不会出现死锁:锁定粒度大,发生锁冲突的概率最高,并发度最低.行级锁:开销 ...

随机推荐

  1. 单选按钮QRadioButton

    继承  QAbstractButton import sys from PyQt5.QtGui import QPixmap from PyQt5.QtWidgets import QApplicat ...

  2. Linux新增用户过程详解

    Linux系统中,当使用useradd添加用户时,会将系统的/etc/skel目录下的所有文件复制到新添加用户的家目录中.该目录下的所有文件都是隐藏文件(以.点开头的文件). 通过修改.添加.删除/e ...

  3. Python人工智能之路 - 第四篇 : jieba gensim 最好别分家之最简单的相似度实现

    简单的问答已经实现了,那么问题也跟着出现了,我不能确定问题一定是"你叫什么名字",也有可能是"你是谁","你叫啥"之类的,这就引出了人工智能 ...

  4. k8s系列~docker mysql

    docker封装mysql的一些心得 简介:今天咱们来聊聊容器化mysql的一些心得 版本:Docker version 18.03 mysql 5.7.21考虑条件:  1 选好合适的docker镜 ...

  5. 【学习博客】Python学习初体验

    本周是正式开始学习Python的第一周.很久不写代码了,毕业第5年了,期间几乎没怎么动过手.这段时间比较规律.密集的学习又让我找回了当时的感觉,还不算陌生,我挺喜欢的这种能实实在在看到自己知识增长的状 ...

  6. nginx反向代理实现前后端分离&跨域问题

    1.代理和跨域 1.1 正向代理 1)用户希望代理服务器帮助其和要访问服务器之间实现通信,需要: a.用户IP报文的目的IP=代理服务器IP: b.用户报文端口号=代理服务器监听端口号: c.HTTP ...

  7. Modelsim SE 破解教程

    第一步:打开我们提供的破解工具包. 第二步:拷贝crack.bat和MentorKG.exe到"C:\modeltech64_10.2c\win64"路径下,如果你的电脑为32位, ...

  8. Linux inotify功能及实现原理【转】

    转自:http://blog.csdn.net/myarrow/article/details/7096460 1. inotify主要功能 它是一个内核用于通知用户空间程序文件系统变化的机制. 众所 ...

  9. 统一异常处理@ExceptionHandler

    异常处理功能中用到的注解是:@ExceptionHandler(异常类型.class). 这个注解的功能是:自动捕获controller层出现的指定类型异常,并对该异常进行相应的异常处理. 比如我要在 ...

  10. 实现div里的内容垂直居中

    ---恢复内容开始--- 在项目中我们会遇到这种情况,一个div的宽固定,里面的内容长度不定,不管是一行还是多行,都要垂直居中,有俩个实现方法: 1.使用absolute,top:50%,transf ...