全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
/* * 上传 * * param path * param file * return * throws Exception * * author CaoFeng * version 1.0.0 * since JDK 1.6 */private static String connectHttpsByPost(String path,File file) throws ExceptionString result =null; URL url = new URL(path);/ 创建连接 HttpURLConnection con = (HttpURLConnection) url .openConnection(); con.setDoInput(true); con.setDoOutput(true); con.setUseCaches(false); / post方式不能使用缓存 / 设置请求头信息 con.setRequestProperty(Connection, Keep-Alive); con.setRequestProperty(Charset, UTF-8); / 设置边界 String BOUNDARY = - + System.currentTimeMillis(); con.setRequestProperty(Content-Type, multipart/form-data; boundary= + BOUNDARY); / 请求正文信息 / 第一部分: StringBuilder sb = new StringBuilder(); sb.append(-); / 必须多两道线 sb.append(BOUNDARY); sb.append(rn); sb.append(Content-Disposition: form-data;name=media;filelength=+file.length()+;filename= + file.getName() + rn); sb.append(Content-Type:application/octet-streamrnrn); byte head = sb.toString().getBytes(utf-8); / 获得输出流 OutputStream out = new DataOutputStream(con.getOutputStream(); / 输出表头 out.write(head); / 文件正文部分 / 把文件以流文件的方式 推入到url中 DataInputStream in = new DataInputStream(new FileInputStream(file); int bytes = 0; byte bufferOut = new byte1024; while (bytes = in.read(bufferOut) != -1) out.write(bufferOut, 0, bytes); in.close(); / 结尾部分 byte foot = (rn- + BOUNDARY + -rn).getBytes(utf-8);/ 定义最后数据分隔线 out.write(foot); out.flush(); out.close(); StringBuffer buffer = new StringBuffer(); BufferedReader reader = null; try / 定义BufferedReader输入流来读取URL的响应 reader = new BufferedReader(new InputStreamReader(con.getInputStream(); String line = null; while (line = reader.readLine() != null) buffer.append(line); if (result = null) result = buffer.toString(); catch (IOException e) System.out.println(发送POST请求出现异常! + e); e.printStackTrace(); throw new IOException(数据读取异常); finally if (reader != null) reader.close(); return result; /* * 上传其他永久素材(图片素材的上限为5000,其他类型为1000) * * param appid * param secret * param file * param type * param access_token * return * throws Exception * * author CaoFeng * version 1.0.0 * since JDK 1.6 */public static JSONObject addMaterialEver(File file,String type,String access_token) throws Exception try System.out.println(开始上传+type+永久素材-);/上传素材String path=/cgi-bin/material/add_material?access_token=+access_token+&type=+type;String result=WeixinMaterial.connectHttpsByPost(path,file);result=result.replaceAll(, );System.out.println(result:+result);JSONObject resultJSON=JSONObject.fromObject(result);if(resultJSON!=null)if(resultJSON.get(media_id)!=null)System.out.println(上传+type+永久素材成功);return resultJSON;elseSystem.out.println(上传+type+永久素材失败);return null; catch (Exception e) System.out.println(程序异常:+e);throw e;finallySystem.out.println(结束上传+type+永久素材-);/* * 上传图片到微信服务器(本接口所上传的图片不占用公众号的素材库中图片数量的5000个的限制。图片仅支持jpg/png格式,大小必须在1MB以下) * * param appid * param secret * param file * param access_token * return * throws Exception * * author CaoFeng * version 1.0.0 * since JDK 1.6 */public static JSONObject addMaterialEver(File file,String access_token) throws Exception try System.out.println(开始上传图文消息内的图片-);/上传图片素材String path=/cgi-bin/media/uploadimg?access_token=+access_token;String result=WeixinMaterial.connectHttpsByPost(path, file);result=result.replaceAll(, );System.out.println(result:+result);JSONObject resultJSON=JSONObject.fromObject(result);if(resultJSON!=null)if(resultJSON.get(url)!=null)System.out.println(上传图文消息内的图片成功);return resultJSON;elseSystem.out.println(上传图文消息内的图片失败);return null; catch (Exception e) System.out.println(程序异常:+e);throw e;finallySystem.out.println(结束上传图文消息内的图片-);/* * 上传临时素材 * * param appid * param secret * param file * param type * param access_token * return * throws Exception * * author CaoFeng * version 1.0.0 * since JDK 1.6 */public static JSONObject mediaUpload(File file,String type,String access_token) throws Exception try System.out.println(开始上传图文消息内的图片-);/上传图片素材String path=/cgi-bin/media/upload?access_token=+access_token+&type=+type;String result=WeixinMaterial.connectHttpsByPost(path,file);result=result.replaceAll(, );JSONObject resultJSON=JSONObject.fromObject(result);if(resultJSON!=null
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高职学生职业道德教育方案
- 电杆增高施工方案
- 火神山施工方案
- 清徐路灯施工方案
- 满架施工方案
- 2026届新疆阿克苏地区乌什县二中高三化学第一学期期末统考试题含解析
- 三年级数学计算题专项练习汇编及答案
- 肋骨骨折急救及手术适应症说明
- 2026届山西省长治市太行中学高二化学第一学期期末学业水平测试试题含答案
- 江西省宜春市丰城九中2026届高二上化学期中调研试题含解析
- 介绍哈萨克族的课件
- GB/T 5072-2023耐火材料常温耐压强度试验方法
- 横断面计算Excel土方断面速算表
- 15D502 等电位联结安装
- 11《答谢中书书》知识点整理
- 创意的表达 课件-2023-2024学年高中通用技术地质版(2019)必修《技术与设计1 》
- 九年级数学期中考试质量分析【精选】
- 基于BIM基数的机电安装工程降本提质增效
- GB/T 10003-2008普通用途双向拉伸聚丙烯(BOPP)薄膜
- 高位自卸汽车设计计算说明书-毕业设计
- BOSA测试培训课件
评论
0/150
提交评论