From 0f2ad1a1ef77364f0776232a88992e8cba30d28d Mon Sep 17 00:00:00 2001 From: adamw Date: Tue, 20 Feb 2018 09:56:42 +0100 Subject: Brave backend --- .../src/main/scala/com/softwaremill/sttp/FollowRedirectsBackend.scala | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'core/src/main') diff --git a/core/src/main/scala/com/softwaremill/sttp/FollowRedirectsBackend.scala b/core/src/main/scala/com/softwaremill/sttp/FollowRedirectsBackend.scala index 3b88850..942f792 100644 --- a/core/src/main/scala/com/softwaremill/sttp/FollowRedirectsBackend.scala +++ b/core/src/main/scala/com/softwaremill/sttp/FollowRedirectsBackend.scala @@ -1,6 +1,7 @@ package com.softwaremill.sttp import java.net.URI + import scala.language.higherKinds class FollowRedirectsBackend[R[_], S](delegate: SttpBackend[R, S]) @@ -12,7 +13,8 @@ class FollowRedirectsBackend[R[_], S](delegate: SttpBackend[R, S]) private def sendWithCounter[T](request: Request[T, S], redirects: Int): R[Response[T]] = { - val resp = delegate.send(request) + // if there are nested follow redirect backends, disabling them and handling redirects here + val resp = delegate.send(request.followRedirects(false)) if (request.options.followRedirects) { responseMonad.flatMap(resp) { response: Response[T] => if (response.isRedirect) { -- cgit v1.2.3