使用远程流下载pdf文件,更新到正式环境后下载的文件大小为0,查看日志发现是输入流有问题,但没有报错
URL url = new URL(filePath);
conn = (HttpURLConnection) url.openConnection();
conn.setConnectTimeout(3 * 1000);
conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
conn.setRequestProperty("Charset", "UTF-8");
conn.setReadTimeout(8 * 1000);
conn.connect();
System.out.println("***************************11111111"+conn+"****************************************************");
response.setCharacterEncoding("utf-8");
response.setContentType(WebUtility.getHttpContentType(filePath.substring(filePath.lastIndexOf("."))));
response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
// response.setHeader("Content-Disposition", "attachment;fileName="+new String(fileName.getBytes("GBK"),"iso8859-1"));
response.setHeader("Content-Disposition", "attachment;fileName="+strNewFileName+filePath.substring(filePath.lastIndexOf(".")));
response.setHeader("Cache-Control", "max-age=0");
inputStream = conn.getInputStream() ;
System.out.println("***************************22222"+inputStream+"****************************************************");
outputStream = response.getOutputStream();
byte[] b = new byte[1024];
int length;
while ((length = inputStream.read(b)) > 0) {
outputStream.write(b, 0, length);
}
System.out.println("***************************over"+outputStream+"****************************************************");
查看服务器端日志只有11111111,后面的2222和over都没有输出