专业的JAVA编程教程与资源

网站首页 > java教程 正文

java上传文件问题解决思路整理(java实现文件上传功能)

temp10 2024-10-31 15:09:52 java教程 8 ℃ 0 评论

1、按照之前上传文件的思路来整理方法



java上传文件问题解决思路整理(java实现文件上传功能)

2、内部错误



后台日志报:



看到这个日志,查过资料,有说文件名不统一的,有说文件没有读到的,也有说文件格式不识别的,反正就是不得行

看代码,看我们框架中有httpDriver.postWithFile(),开心中,以为自己就成功了,放进来一跑,结果如下:



说啥,SSL握手失败,我们证书的有效期检查失败了,然后通过浏览器看了一下,确实,项目里面的证书过期了,找徐萌帮助,看看能不能给我们换个证书,开始以为是ng里面配置的证书,结果发现服务器不是调用的ng里面的证书,找了一圈用的tomcat里面的证书,tomcat是以jar包的方式提供的,咋办,找研发,研发帮我看代码,给我提供了一种新的思路,我们可以在java代码中设置默认所有证书均可信,

首先分析我们自己框架代码,发现除了httpDriver.postWithFile()没有设置默认所有证书可信,其他的post请求都设置了的,而且框架代码不能动,绝望中

好嘛,从头再来,自己去网上找了一段,跟我们代码调用的引擎一样的方法,再把忽略证书也用起来,发现还是不得行,抓狂中

期间一直反复思考为什么jmeter可以我们就是不可以,jmeter高级选项中配置了一个java到底什么意思



无奈中,抓包,抓包建议改系统访问方式为http,道理,大家都懂得,https啥也看不到

看看jmeter和我们发出去的有啥不一样

脚本抓包信息:

我们自己的代码



Jmeter信息抓包



引擎不一样,我们自己的用的HttpClient,jmeter用了个java,什么鬼,不知道

搜索资料,关键字为:java 实现form表单,发现了一个新的引擎,HttpURLConnection,看了这个方法,在看看之前我们找的忽略证书的方法

继续码砖,使用HttpURLConnection引擎实现form表单提交,在加上忽略证书的方法,哈哈哈哈,这个时候开心了,成功了,时间已经过去2天了

成功后就改造代码,如何让代码变成通用方法,改造完成,一跑,失败了,一脸懵逼的状态中,翻来覆去看了好多次,没发现不一样,可是就是找不到,为啥?

脚本考出来,用对比工具对比,嘿嘿,发现了蛛丝马迹,from表单边界啊,请求是靠头中的边界来识别消息体的,我在消息体中又用了一个不同的边界值,第一次认识到boundary这个是如何使用,继续修改代码,在跑,OK,改造也完成

思考:

为什么CA可以使用框架中代码实现文件上传,云盘就不得行?

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表