diff --git a/android/widgets/src/main/java/org/nativescript/widgets/Async.java b/android/widgets/src/main/java/org/nativescript/widgets/Async.java index be449a583..873c658e1 100644 --- a/android/widgets/src/main/java/org/nativescript/widgets/Async.java +++ b/android/widgets/src/main/java/org/nativescript/widgets/Async.java @@ -288,6 +288,7 @@ public class Async public int timeout = -1; public int screenWidth = -1; public int screenHeight = -1; + public boolean dontFollowRedirects = false; public void addHeaders(HttpURLConnection connection) { @@ -522,6 +523,11 @@ public class Async connection.setConnectTimeout(options.timeout); } + // don't follow redirect (30x) responses; by default, HttpURLConnection follows them. + if (options.dontFollowRedirects) { + connection.setInstanceFollowRedirects(false); + } + // Do not attempt to write the content (body) for DELETE method, Java will throw directly if (!requestMethod.equals(DELETE_METHOD)) {