JAVA微信开发如何下载微信服务器中图片

更新时间:2023-05-30 02:21:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

在某些场合中,我们需要将微信发送的下载

下来保存在我们自己的服务器,以防止在过期后找不到的问题!在开发微信通讯方面更是重要, 具体的实现如下:

/**

*根据文件 id 下载文件*

豫的产物,我想这就是真正的走一步算一步。什么梦想

*@parammediaId

*媒体 id*@throwsException

*/

publicInputStreamgetInputStream(Strin gmediaId){

豫的产物,我想这就是真正的走一步算一步。什么梦想

GetExistAessTokengetExistAessToken=Ge tExistAessToken.getInstance();

StringaessToken=getExistAessToken.get

ExistAessToken();

InputStreamis=null;Stringurl="api.weixin.qq/cgi-bin/medi

豫的产物,我想这就是真正的走一步算一步。什么梦想

a/get?aess_token="

+aessToken+"&media_id="+mediaId;try{

URLurlGet=newURL(url);

HttpURLConnectionhttp=(HttpURLConnect ion)urlGet

豫的产物,我想这就是真正的走一步算一步。什么梦想

.openConnection();

http.setRequestMethod("GET");//必须是 get 方式请求

http.setRequestProperty("Content-Type ",

"application/x-www-form-urlencoded");

豫的产物,我想这就是真正的走一步算一步。什么梦想

http.setDoOutput(true);

http.setDoInput(true);System.setProperty("sun.client.defaul

tConnectTimeout","30000");//连接超时 30 秒

System.setProperty("sun.client.defaultReadTimeout","30000");//读取超时 30 秒

豫的产物,我想这就是真正的走一步算一步。什么梦想

http.connect();

//获取文件转化为 byte 流is=http.getInputStream();

}catch(Exceptione){

e.printStackTrace();}

豫的产物,我想这就是真正的走一步算一步。什么梦想

returnis;

}/**

*获取下载信息(jpg)

**@parammediaId

豫的产物,我想这就是真正的走一步算一步。什么梦想

*文件的 id

*@throwsException*/

publicvoidsaveImageToDisk(Stringmedia Id)throwsException{

InputStreaminputStream=getInputStream

豫的产物,我想这就是真正的走一步算一步。什么梦想

(mediaId);

byte[]data=newbyte[1024];intlen=0;

FileOutputStreamfileOutputStream=null ;

try{

豫的产物,我想这就是真正的走一步算一步。什么梦想

fileOutputStream=newFileOutputStream( "test1.jpg");

while((len=inputStream.read(data))!=-

本文来源:https://www.bwwdw.com/article/oq74.html

Top