From b5db06a597247d3a632ac8c5c7cce2457e0eda35 Mon Sep 17 00:00:00 2001 From: JD Alvar3z Date: Wed, 22 Oct 2025 00:07:48 -0500 Subject: [PATCH 1/3] fix: Solve 204 No Content Error --- .../android/volley/toolbox/JsonObjectRequest.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/core/src/main/java/com/android/volley/toolbox/JsonObjectRequest.java b/core/src/main/java/com/android/volley/toolbox/JsonObjectRequest.java index eccb54b4..3c019fda 100644 --- a/core/src/main/java/com/android/volley/toolbox/JsonObjectRequest.java +++ b/core/src/main/java/com/android/volley/toolbox/JsonObjectRequest.java @@ -17,6 +17,7 @@ package com.android.volley.toolbox; import androidx.annotation.Nullable; +import com.android.volley.Cache; import com.android.volley.NetworkResponse; import com.android.volley.ParseError; import com.android.volley.Response; @@ -90,17 +91,18 @@ public JsonObjectRequest( @Override protected Response parseNetworkResponse(NetworkResponse response) { + Cache.Entry cacheHeaders = HttpHeaderParser.parseCacheHeaders(response); try { + if (response.data == null || response.data.length == 0) { + return Response.success(new JSONObject(), cacheHeaders); + } String jsonString = new String( response.data, HttpHeaderParser.parseCharset(response.headers, PROTOCOL_CHARSET)); - return Response.success( - new JSONObject(jsonString), HttpHeaderParser.parseCacheHeaders(response)); - } catch (UnsupportedEncodingException e) { + return Response.success(new JSONObject(jsonString), cacheHeaders); + } catch (UnsupportedEncodingException | JSONException e) { return Response.error(new ParseError(e)); - } catch (JSONException je) { - return Response.error(new ParseError(je)); } } } From 35efa2a297cbe0fa2ab80d8a347607c78c06de76 Mon Sep 17 00:00:00 2001 From: JD Alvar3z Date: Wed, 22 Oct 2025 00:20:51 -0500 Subject: [PATCH 2/3] fix: Solve 204 No Content Error --- .../main/java/com/android/volley/toolbox/JsonObjectRequest.java | 1 + 1 file changed, 1 insertion(+) diff --git a/core/src/main/java/com/android/volley/toolbox/JsonObjectRequest.java b/core/src/main/java/com/android/volley/toolbox/JsonObjectRequest.java index 3c019fda..a5a6c513 100644 --- a/core/src/main/java/com/android/volley/toolbox/JsonObjectRequest.java +++ b/core/src/main/java/com/android/volley/toolbox/JsonObjectRequest.java @@ -93,6 +93,7 @@ public JsonObjectRequest( protected Response parseNetworkResponse(NetworkResponse response) { Cache.Entry cacheHeaders = HttpHeaderParser.parseCacheHeaders(response); try { + //Check Empty Response if (response.data == null || response.data.length == 0) { return Response.success(new JSONObject(), cacheHeaders); } From 4af65f642b8461a0e3d3227bb9d97abded7b341b Mon Sep 17 00:00:00 2001 From: JD Alvar3z Date: Wed, 22 Oct 2025 00:21:27 -0500 Subject: [PATCH 3/3] fix: Solve 204 No Content Error --- .../main/java/com/android/volley/toolbox/JsonObjectRequest.java | 1 - 1 file changed, 1 deletion(-) diff --git a/core/src/main/java/com/android/volley/toolbox/JsonObjectRequest.java b/core/src/main/java/com/android/volley/toolbox/JsonObjectRequest.java index a5a6c513..3c019fda 100644 --- a/core/src/main/java/com/android/volley/toolbox/JsonObjectRequest.java +++ b/core/src/main/java/com/android/volley/toolbox/JsonObjectRequest.java @@ -93,7 +93,6 @@ public JsonObjectRequest( protected Response parseNetworkResponse(NetworkResponse response) { Cache.Entry cacheHeaders = HttpHeaderParser.parseCacheHeaders(response); try { - //Check Empty Response if (response.data == null || response.data.length == 0) { return Response.success(new JSONObject(), cacheHeaders); }