ソースを参照

🐛 #1500 修复企业微信素材下载报错问题:Prefix string too short

dev1
BeHappyWsz 5年前
committed by GitHub
コミット
6f57472a02
この署名に対応する既知のキーがデータベースに存在しません GPGキーID: 4AEE18F83AFDEB23
3個のファイルの変更18行の追加3行の削除
  1. +6
    -1
      weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/apache/ApacheMediaDownloadRequestExecutor.java
  2. +6
    -1
      weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/jodd/JoddHttpMediaDownloadRequestExecutor.java
  3. +6
    -1
      weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/okhttp/OkHttpMediaDownloadRequestExecutor.java

+ 6
- 1
weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/apache/ApacheMediaDownloadRequestExecutor.java ファイルの表示

@@ -63,7 +63,12 @@ public class ApacheMediaDownloadRequestExecutor extends BaseMediaDownloadRequest
fileName = String.valueOf(System.currentTimeMillis()); fileName = String.valueOf(System.currentTimeMillis());
} }


return FileUtils.createTmpFile(inputStream, FilenameUtils.getBaseName(fileName), FilenameUtils.getExtension(fileName),
String baseName = FilenameUtils.getBaseName(fileName);
if (StringUtils.isBlank(fileName) || baseName.length() < 3) {
baseName = String.valueOf(System.currentTimeMillis());
}

return FileUtils.createTmpFile(inputStream, baseName, FilenameUtils.getExtension(fileName),
super.tmpDirFile); super.tmpDirFile);


} finally { } finally {


+ 6
- 1
weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/jodd/JoddHttpMediaDownloadRequestExecutor.java ファイルの表示

@@ -60,9 +60,14 @@ public class JoddHttpMediaDownloadRequestExecutor extends BaseMediaDownloadReque
return null; return null;
} }


String baseName = FilenameUtils.getBaseName(fileName);
if (StringUtils.isBlank(fileName) || baseName.length() < 3) {
baseName = String.valueOf(System.currentTimeMillis());
}

try (InputStream inputStream = new ByteArrayInputStream(response.bodyBytes())) { try (InputStream inputStream = new ByteArrayInputStream(response.bodyBytes())) {
return FileUtils.createTmpFile(inputStream, return FileUtils.createTmpFile(inputStream,
FilenameUtils.getBaseName(fileName),
baseName,
FilenameUtils.getExtension(fileName), FilenameUtils.getExtension(fileName),
super.tmpDirFile); super.tmpDirFile);
} }


+ 6
- 1
weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/okhttp/OkHttpMediaDownloadRequestExecutor.java ファイルの表示

@@ -58,8 +58,13 @@ public class OkHttpMediaDownloadRequestExecutor extends BaseMediaDownloadRequest
return null; return null;
} }


String baseName = FilenameUtils.getBaseName(fileName);
if (StringUtils.isBlank(fileName) || baseName.length() < 3) {
baseName = String.valueOf(System.currentTimeMillis());
}

File file = File.createTempFile( File file = File.createTempFile(
FilenameUtils.getBaseName(fileName), "." + FilenameUtils.getExtension(fileName), super.tmpDirFile
baseName, "." + FilenameUtils.getExtension(fileName), super.tmpDirFile
); );


try (BufferedSink sink = Okio.buffer(Okio.sink(file))) { try (BufferedSink sink = Okio.buffer(Okio.sink(file))) {


読み込み中…
キャンセル
保存