Java raw 请求和获取

本文详细介绍了如何使用Java发送RAW请求及解析响应数据,包括使用HttpClient进行JSON格式的POST请求,以及如何从输入流中读取RAW包数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

未经允许,禁止转载
2019-03-01 编写文档
2019-04-13 修改文档
警告 “程序员大本营” http://www.pianshen.com/article/6974255410/ 抄袭可耻

raw方式使用的是纯字符串的数据上传方式;
在postman中,raw格式如下:未经允许,禁止转载
未经允许,禁止转载

请求类型为raw,请求格式为json;
java发送raw请求代码如下:

/**
 * java发送raw
 * @author zengwei
 * @email 1014483974@qq.com
 * @version 2019年3月01日 下午4:02:02
 */
public static JSONObject deviceRequest() {

    JSONObject result = null;

    try {
        String url = "url 地址";
        JSONObject json = new JSONObject();
        json.put("param", param 参数 );
        @SuppressWarnings({"resource"})
        HttpClient httpClient = new DefaultHttpClient();
        HttpPost post = new HttpPost(url);
        StringEntity postingString = new StringEntity(json.toJSONString());
        post.setEntity(postingString);
        post.setHeader("Content-type", "application/json");
        HttpResponse response = httpClient.execute(post);
        String content = EntityUtils.toString(response.getEntity());

        result = (JSONObject) JSONObject.parse(content);

        System.out.println(result);

    } catch (ParseException | IOException e) {
        e.printStackTrace();
    }

    return result;
}

java获取raw包请求需要从流中获取:

/**
 * java获取raw
 * @author zengwei
 * @email 1014483974@qq.com
 * @version 2019年3月01日 下午4:10:04
 */
public static String readRaw(InputStream inputStream) {

    String result = "";
    try {
        ByteArrayOutputStream outSteam = new ByteArrayOutputStream();
        byte[] buffer = new byte[1024];

        int len;
        while ((len = inputStream.read(buffer)) != -1) {
            outSteam.write(buffer, 0, len);
        }

        outSteam.close();
        inputStream.close();

        result = new String(outSteam.toByteArray(), "UTF-8");

    } catch (IOException e) {
        e.printStackTrace();
    }

    return result;
}

传入参数 使用 request.getInputStream():

/**
 * 广告推广API
 * @author zengwei
 * @email 1014483974@qq.com
 * @version 2019年3月01日 下午4:20:05
 */
String result = FileUtils.readRaw(request.getInputStream());

可从流中获取raw包的参数

未经允许,禁止转载,抄袭可耻

分享≠给抄袭

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值