From 9f971e7b2d12f687dd1c0c92dd0d21f5a5d9126a Mon Sep 17 00:00:00 2001 From: JUKOMU <3037738647@qq.com> Date: Sat, 11 Jul 2026 20:02:10 +0800 Subject: [PATCH 1/3] =?UTF-8?q?fix(parse):=20=E4=BF=AE=E5=A4=8D=E8=A7=A3?= =?UTF-8?q?=E6=9E=90=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/github/jukomu/jmcomic/core/parser/ApiParser.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/jmcomic-core/src/main/java/io/github/jukomu/jmcomic/core/parser/ApiParser.java b/jmcomic-core/src/main/java/io/github/jukomu/jmcomic/core/parser/ApiParser.java index 0ebf3a3..bf1dde7 100644 --- a/jmcomic-core/src/main/java/io/github/jukomu/jmcomic/core/parser/ApiParser.java +++ b/jmcomic-core/src/main/java/io/github/jukomu/jmcomic/core/parser/ApiParser.java @@ -445,7 +445,12 @@ private static List buildImageList(String photoId, String scrambleId, S List images = new ArrayList<>(); int sortOrder = 1; for (JsonElement item : imagesArray) { - String filename = ((JsonObject) item).get("image").getAsString(); + String filename; + try { + filename = item.getAsString(); + } catch (Exception e) { + filename = ((JsonObject) item).get("image").getAsString(); + } String url = String.format("%s%s/media/photos/%s/%s", JmConstants.PROTOCOL_HTTPS, imageDomain, photoId, filename); images.add(new JmImage( photoId, From ed3d2e3afceaf5fb0ccabc25c25f823f5bd43717 Mon Sep 17 00:00:00 2001 From: JUKOMU <3037738647@qq.com> Date: Sat, 11 Jul 2026 20:04:33 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 8 ++++---- README_en.md | 8 ++++---- docs/sources/advanced/modular-integration.md | 6 +++--- docs/sources/android.md | 4 ++-- docs/sources/index.md | 4 ++-- docs/sources/quickstart/installation.md | 6 +++--- jmcomic-android-support/pom.xml | 2 +- jmcomic-api/pom.xml | 2 +- jmcomic-core/pom.xml | 2 +- jmcomic-sample/pom.xml | 2 +- pom.xml | 2 +- 11 files changed, 23 insertions(+), 23 deletions(-) diff --git a/README.md b/README.md index c31fe44..918ec2e 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ ![Java](https://img.shields.io/badge/Java-17+-blue.svg) ![License](https://img.shields.io/badge/License-MIT-yellow.svg) -![Version](https://img.shields.io/badge/Version-1.1.6-brightgreen.svg) +![Version](https://img.shields.io/badge/Version-1.1.7-brightgreen.svg) **一个用于获取JMComic(禁漫天堂)数据的Java API库** @@ -148,7 +148,7 @@ io.github.jukomu jmcomic-api - 1.1.6 + 1.1.7 ``` * 安装 jmcomic-core @@ -156,7 +156,7 @@ io.github.jukomu jmcomic-core - 1.1.6 + 1.1.7 ``` * Android平台额外安装 jmcomic-android-support @@ -164,7 +164,7 @@ io.github.jukomu jmcomic-android-support - 1.1.6 + 1.1.7 ``` diff --git a/README_en.md b/README_en.md index 6c6b1d9..58a35dd 100644 --- a/README_en.md +++ b/README_en.md @@ -8,7 +8,7 @@ ![Java](https://img.shields.io/badge/Java-17+-blue.svg) ![License](https://img.shields.io/badge/License-MIT-yellow.svg) -![Version](https://img.shields.io/badge/Version-1.1.6-brightgreen.svg) +![Version](https://img.shields.io/badge/Version-1.1.7-brightgreen.svg) **A Java API library for fetching data from JMComic** @@ -147,7 +147,7 @@ The core of this project is a **data acquisition and management tool**, not a ri io.github.jukomu jmcomic-api - 1.1.6 + 1.1.7 ``` * Install jmcomic-core @@ -155,7 +155,7 @@ The core of this project is a **data acquisition and management tool**, not a ri io.github.jukomu jmcomic-core - 1.1.6 + 1.1.7 ``` * (Android platform) Install jmcomic-android-support @@ -163,7 +163,7 @@ The core of this project is a **data acquisition and management tool**, not a ri io.github.jukomu jmcomic-android-support - 1.1.6 + 1.1.7 ``` diff --git a/docs/sources/advanced/modular-integration.md b/docs/sources/advanced/modular-integration.md index 70114c1..4948c90 100644 --- a/docs/sources/advanced/modular-integration.md +++ b/docs/sources/advanced/modular-integration.md @@ -18,7 +18,7 @@ jmcomic-sample jmcomic-android-support io.github.jukomu jmcomic-api - 1.1.6 + 1.1.7 ``` @@ -35,7 +35,7 @@ jmcomic-sample jmcomic-android-support io.github.jukomu jmcomic-core - 1.1.6 + 1.1.7 ``` @@ -49,7 +49,7 @@ jmcomic-sample jmcomic-android-support io.github.jukomu jmcomic-core - 1.1.6 + 1.1.7 org.jsoup diff --git a/docs/sources/android.md b/docs/sources/android.md index 426aac9..b6a201a 100644 --- a/docs/sources/android.md +++ b/docs/sources/android.md @@ -5,8 +5,8 @@ ```groovy // build.gradle (app) dependencies { - implementation 'io.github.jukomu:jmcomic-core:1.1.6' - implementation 'io.github.jukomu:jmcomic-android-support:1.1.6' + implementation 'io.github.jukomu:jmcomic-core:1.1.7' + implementation 'io.github.jukomu:jmcomic-android-support:1.1.7' } ``` diff --git a/docs/sources/index.md b/docs/sources/index.md index a5004f7..2f4aa3f 100644 --- a/docs/sources/index.md +++ b/docs/sources/index.md @@ -4,7 +4,7 @@ [![Java](https://img.shields.io/badge/Java-17+-blue.svg)](https://openjdk.org/) [![License](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) -[![Version](https://img.shields.io/badge/Version-1.1.6-brightgreen.svg)](https://github.com/JUKOMU/JMComic-Api-Java) +[![Version](https://img.shields.io/badge/Version-1.1.7-brightgreen.svg)](https://github.com/JUKOMU/JMComic-Api-Java) --- @@ -43,7 +43,7 @@ jmcomic-android-support → Android 平台适配 io.github.jukomu jmcomic-core - 1.1.6 + 1.1.7 ``` diff --git a/docs/sources/quickstart/installation.md b/docs/sources/quickstart/installation.md index f3140bf..c72f4b5 100644 --- a/docs/sources/quickstart/installation.md +++ b/docs/sources/quickstart/installation.md @@ -15,7 +15,7 @@ io.github.jukomu jmcomic-core - 1.1.6 + 1.1.7 ``` @@ -27,7 +27,7 @@ io.github.jukomu jmcomic-api - 1.1.6 + 1.1.7 ``` @@ -39,7 +39,7 @@ io.github.jukomu jmcomic-android-support - 1.1.6 + 1.1.7 ``` diff --git a/jmcomic-android-support/pom.xml b/jmcomic-android-support/pom.xml index db142e2..48f59e8 100644 --- a/jmcomic-android-support/pom.xml +++ b/jmcomic-android-support/pom.xml @@ -6,7 +6,7 @@ io.github.jukomu jmcomic-api-java - 1.1.6 + 1.1.7 jmcomic-android-support diff --git a/jmcomic-api/pom.xml b/jmcomic-api/pom.xml index e777d0c..adbd13d 100644 --- a/jmcomic-api/pom.xml +++ b/jmcomic-api/pom.xml @@ -6,7 +6,7 @@ io.github.jukomu jmcomic-api-java - 1.1.6 + 1.1.7 jmcomic-api diff --git a/jmcomic-core/pom.xml b/jmcomic-core/pom.xml index 01e2c25..285c3db 100644 --- a/jmcomic-core/pom.xml +++ b/jmcomic-core/pom.xml @@ -6,7 +6,7 @@ io.github.jukomu jmcomic-api-java - 1.1.6 + 1.1.7 jmcomic-core diff --git a/jmcomic-sample/pom.xml b/jmcomic-sample/pom.xml index 3b8f6df..459641b 100644 --- a/jmcomic-sample/pom.xml +++ b/jmcomic-sample/pom.xml @@ -6,7 +6,7 @@ io.github.jukomu jmcomic-api-java - 1.1.6 + 1.1.7 jmcomic-sample diff --git a/pom.xml b/pom.xml index b6bcce2..5618039 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ io.github.jukomu jmcomic-api-java - 1.1.6 + 1.1.7 pom jmcomic-api From e2ebdd389d958274fc897878a5e74fc5e4e77d67 Mon Sep 17 00:00:00 2001 From: JUKOMU <3037738647@qq.com> Date: Sat, 11 Jul 2026 20:17:23 +0800 Subject: [PATCH 3/3] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9=E4=B8=BA=E6=98=BE?= =?UTF-8?q?=E5=BC=8F=E7=B1=BB=E5=9E=8B=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../github/jukomu/jmcomic/core/parser/ApiParser.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/jmcomic-core/src/main/java/io/github/jukomu/jmcomic/core/parser/ApiParser.java b/jmcomic-core/src/main/java/io/github/jukomu/jmcomic/core/parser/ApiParser.java index bf1dde7..c427ea7 100644 --- a/jmcomic-core/src/main/java/io/github/jukomu/jmcomic/core/parser/ApiParser.java +++ b/jmcomic-core/src/main/java/io/github/jukomu/jmcomic/core/parser/ApiParser.java @@ -446,10 +446,14 @@ private static List buildImageList(String photoId, String scrambleId, S int sortOrder = 1; for (JsonElement item : imagesArray) { String filename; - try { + if (item.isJsonPrimitive()) { filename = item.getAsString(); - } catch (Exception e) { - filename = ((JsonObject) item).get("image").getAsString(); + } else if (item.isJsonObject() + && item.getAsJsonObject().has("image") + && !item.getAsJsonObject().get("image").isJsonNull()) { + filename = item.getAsJsonObject().get("image").getAsString(); + } else { + throw new ParseResponseException("Unsupported image element format in images array: " + item); } String url = String.format("%s%s/media/photos/%s/%s", JmConstants.PROTOCOL_HTTPS, imageDomain, photoId, filename); images.add(new JmImage(