精选文章 fiddler抓httpclient发送的http请求包

fiddler抓httpclient发送的http请求包

作者:一直很很安静 时间: 2019-11-11 12:34:34
一直很很安静 2019-11-11 12:34:34
@PostMapping("/face")
	public ResponseResult playerFace(MultipartHttpServletRequest file, String phone, HttpServletRequest request) throws BusinessException {
//        CloseableHttpClient httpClient = HttpClients.createDefault();

        HttpHost proxy = new HttpHost("127.0.0.1", 8888, "http");//127.0.0.1:8888地址为fiddler的抓包代理地址
        DefaultProxyRoutePlanner routePlanner = new DefaultProxyRoutePlanner(proxy);
        CloseableHttpClient client = HttpClients.custom().setRoutePlanner(routePlanner).build();

        MultipartFile multipartFile = file.getFile("face");
        String result = "";
        try {
            String fileName = multipartFile.getOriginalFilename();
            HttpPost httpPost = new HttpPost(PLAYER_URL_BASE + PLAYER_URL_FACE_POST);

//            MultipartEntity entity =new MultipartEntity(HttpMultipartMode.);
//            entity.addPart("face",new ByteArrayBody(multipartFile.getBytes(),"face"));
            MultipartEntityBuilder builder = MultipartEntityBuilder.create();
//            builder.setBoundary("--FaFlZG8h8pJDidGg6iAtbXzeqaaICWhXLR");
            builder.addBinaryBody("face", multipartFile.getInputStream(), ContentType.create("image/jpeg", Consts.UTF_8), "face.jpg");// 文件流
            HttpEntity entity = builder.build();

            httpPost.setEntity(entity);

//            HttpEntity entity = builder.build();
//            httpPost.setHeader("X-Elephant-Token",getToken(phone));
            httpPost.setHeader("X-Elephant-Source",PLAYER_SOURCE);
            httpPost.setHeader("X-Elephant-Open-Id",phone);
            HttpResponse response =client.execute(httpPost);
//            httpPost.setHeader("Content-Length",String.valueOf(multipartFile.getSize()));
//            HttpResponse response = HttpClientUtil.doPostFile(httpPost,entity,"",client);// 执行提交
            HttpEntity responseEntity = response.getEntity();
            if (responseEntity != null) {
                // 将响应内容转换为字符串
                result = EntityUtils.toString(responseEntity,"UTF-8");
            }
        } catch (IOException e) {
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
//            try {
//                httpClient.close();
//            } catch (IOException e) {
//                e.printStackTrace();
//            }
        }
        return ResponseResult.getResponse().setData(result);

	}

 

 

 

fiddler抓httpclient发送的http请求包1

勿删,copyright占位
分享文章到微博
分享文章到朋友圈

上一篇:卫星遥感大数据行业周报(2019.11.04--2019.11.10)

下一篇:剑指Offer--序列化二叉树(JS)

您可能感兴趣

  • 面试软件测试总结(常见的面试问题)

    软件测试级别? 单元测试:单元测试是对软件组成单元进行测试。其目的是检验软件基本组成单位的正确性。测试的对象是软件设计的最小单位:模块。Findyou又称为模块测试,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。(测试内容:模块接口测试、局部数据结构测试、路径测试、错误处理测试、边界测试) 集成测试:(集成测试也称联合测试、组装测试,将程序模块采用适当的集成策略组装起来...

  • wireshark怎么抓包和详细图文教程

    wireshark是非常流行的网络封包分析软件,功能十分强大。可以截取各种网络封包,显示网络封包的详细信息。使用wireshark的人必须了解网络协议,否则就看不懂wireshark了。 为了安全考虑,wireshark只能查看封包,而不能修改封包的内容,或者发送封包。 wireshark能获取HTTP,也能获取HTTPS,但是不能解密HTTPS,所以wireshark看不懂HTTPS中的内...

  • 大型分布式网站架构设计与实践

    阅读文本大概需要3分钟。 SOA和RPC 随着互联网规模发展,面向服务的体系架构(SOA)成为主流的架构方式,SOA的本质思想是高内聚、低耦合地实现分治,各个系统之间通过服务的方式进行交互,这样保证了交互的标准性,这对于一个复杂的大规模系统来说显得尤为重要,子系统之间能够标准清晰地互相配合与沟通。同时,随着数据规模的飞速发展,从单一应用架构,再到拆分成多个子系统,演变成垂直应用架构,最后演变...

  • 接口测试之——Charles抓包及常见问题解决

    简介 Charles其实是一款代理服务器,通过成为电脑或者浏览器的代理,然后截取请求和请求结果达到分析抓包的目的。该软件是用Java写的,能够在Windows,Mac,Linux上使用,安装Charles的时候要先装好Java环境。 Charles是在 常用的网络封包截取工具,在做移动开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。Charles 通过将自己设置成系...

  • 软测5班Http协议与Fiddler抓包(2019-10-24)

    一:什么是http协议 协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或者规则,超文本传输协议(http)是一种通信协议,它允许将超文本标记语言(html)文档从web服务器传送到客户端的浏览器 目前我们使用的是http/1.1版本 二:web服务器,浏览器,代理服务器工作原理 三:URL详解 URL:地址用于描述一个网络上的资源,基本格式如下: schema://hos...

  • HTTP协议详解(基础概念 方法 状态码 首部 连接 Cookie 新特性 安全)

    一 、基础概念 URI URI 包含 URL 和 URN。 请求和响应报文 1. 请求报文 2. 响应报文 二、HTTP 方法 客户端发送的 请求报文 第一行为请求行,包含了方法字段。 GET 获取资源 当前网络请求中,绝大部分使用的是 GET 方法。 HEAD 获取报文首部 和 GET 方法类似,但是不返回报文实体主体部分。 主要用于确认 URL 的有效性以及资源更新的日期时间等。 POS...

  • HTTP/HTTPS抓包工具-Fiddler

    HTTP代理神器Fiddler Fiddler是一款强大Web调试工具,它能记录所有客户端和服务器的HTTP请求。 Fiddler启动的时候,默认IE的代理设为了127.0.0.1:8888,而其他浏览器是需要手动设置。 工作原理 Fiddler 是以代理web服务器的形式工作的,它使用代理地址:127.0.0.1,端口:8888 Fiddler抓取HTTPS设置 启动Fiddler,打开菜...

  • 三、URL、URI的了解、HTTP请求的格式、method(方式)、GET与POST的区别、Status Code(状态码)、报文格式

    引言:HTTP请求包含4个部分,分别是URL(统一资源定位符)、method(请求方式)、Headers(请求头)、Body(请求体) 一、了解URL、URI、及URL格式 URL,全称:Uniform Resource Locator 译名:统一资源定位符,用于准确描述Internet上某一资源的地址; 通常我们访问的网页都是有一个URL地址,或称Web地址,俗称:网址; 需要明确的是,U...

华为云40多款云服务产品0元试用活动

免费套餐,马上领取!
CSDN

CSDN

中国开发者社区CSDN (Chinese Software Developer Network) 创立于1999年,致力为中国开发者提供知识传播、在线学习、职业发展等全生命周期服务。