diff --git a/server/pom.xml b/server/pom.xml
index c0eda0e8..064ff85e 100644
--- a/server/pom.xml
+++ b/server/pom.xml
@@ -201,6 +201,12 @@
system
${basedir}/lib/cpdetector-1.04.jar
+
+
+ io.mola.galimatias
+ galimatias
+ 0.2.1
+
diff --git a/server/src/main/java/cn/keking/utils/DownloadUtils.java b/server/src/main/java/cn/keking/utils/DownloadUtils.java
index b46cac82..6c48d81c 100644
--- a/server/src/main/java/cn/keking/utils/DownloadUtils.java
+++ b/server/src/main/java/cn/keking/utils/DownloadUtils.java
@@ -4,6 +4,7 @@ import cn.keking.config.ConfigConstants;
import cn.keking.model.FileAttribute;
import cn.keking.model.FileType;
import cn.keking.model.ReturnResponse;
+import io.mola.galimatias.GalimatiasParseException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -81,7 +82,6 @@ public class DownloadUtils {
public static byte[] getBytesFromUrl(String urlStr) throws IOException {
InputStream is = getInputStreamFromUrl(urlStr);
if (is == null) {
- // urlStr = URLUtil.normalize(urlStr, true, true);
is = getInputStreamFromUrl(urlStr);
if (is == null) {
logger.error("文件下载异常:url:{}", urlStr);
@@ -98,13 +98,14 @@ public class DownloadUtils {
private static InputStream getInputStreamFromUrl(String urlStr) {
try {
- URL url = new URL(urlStr);
+
+ URL url = io.mola.galimatias.URL.parse(urlStr).toJavaURL();
URLConnection connection = url.openConnection();
if (connection instanceof HttpURLConnection) {
connection.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
}
return connection.getInputStream();
- } catch (IOException e) {
+ } catch (IOException | GalimatiasParseException e) {
logger.warn("连接url异常:url:{}", urlStr);
return null;
}