java发起URL的post表单请求上传视频

javascript 复制代码
     /**
	 * 上传视频
	 */
	@Override
	public R uploadVideo(MultipartFile video) {

			String url = "xxxxxxxxxxx";
			HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection();
			conn.setConnectTimeout(10*1000);
			conn.setConnectTimeout(5000);
			conn.setReadTimeout(30000);
			conn.setDoOutput(true);
			conn.setDoInput(true);
			conn.setUseCaches(false);
			conn.setRequestMethod("POST");
			conn.setRequestProperty("Connection", "Keep-Alive");
			conn.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-CN; rv:1.9.2.6)");
			conn.setRequestProperty("Content-Type", "multipart/form-data; boundary=" + Boundary);

			DataOutputStream out = new DataOutputStream(conn.getOutputStream());
			//=============================模拟表单提交视频的核心===============top
			StringBuffer strBuf = new StringBuffer();
			strBuf.append("\r\n").append("--").append(Boundary).append("\r\n");
			strBuf.append("Content-Disposition: form-data; name=\"" + "video" + "\"; filename=\"" + video.getOriginalFilename() + "\"\r\n");
			strBuf.append("Content-Type:" + "video/mp4" + "\r\n\r\n");

			out.write(strBuf.toString().getBytes());

			byte[] b = new byte[1024];
			int l = 0;
			out.write(b); // 写入文件
			out.writeUTF("\r\n--"+Boundary+"--\r\n");
			out.flush();
			out.close();
			//=============================模拟表单提交视频的核心===============bottom
			BufferedReader result = new BufferedReader(new InputStreamReader(conn.getInputStream()));
			String s = null;
			StringBuilder r = new StringBuilder();
			while((s=result.readLine())!=null) {
				r.append(s);
			}
			
//			return R.error();
			
		}catch (Exception e){
			return R.error("异常================="+e);
		}
	}

原文链接:https://blog.csdn.net/weixin_43852094/article/details/11535179

相关推荐
吴声子夜歌4 小时前
ApacheCommons——commons-pool2(高性能通用对象池框架)
java·开发语言·apache
kruptos9 小时前
分布式系统怎么“选主“?Raft 共识一次讲清
开发语言·分布式·php·共识算法
xcl09259 小时前
幼儿托育系统开发实战:从需求分析到上线全流程指南
java·大数据·需求分析
吴声子夜歌9 小时前
ApacheCommons——commons-cli(命令行参数解析)
java·开发语言·apache
小小猪的春天9 小时前
Java 手写第一个 MCP Server:Spring AI MCP 半小时跑通
java·人工智能·spring boot·ai编程
find1star9 小时前
LeetCode 141:环形链表
java·算法·leetcode·链表
今天AI了吗10 小时前
DeepSeek Harness 深度解析:从评测架构到实战落地
java·网络·数据库·人工智能·架构·java-ee
benchmark_cc10 小时前
REST API 和 Python SDK 应该怎么选?量化交易数据接口选型实战
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
王的宝库10 小时前
Go 项目结构:从单文件到标准工程布局
开发语言·后端·golang
Tairitsu_H10 小时前
[C++] 深入理解红黑树:封装set与map
开发语言·c++·set·map·红黑树·模拟实现