# request method changed after 307 redirect

**URL:** <https://community.gatling.io/t/request-method-changed-after-307-redirect/1782>\
**Category:** Gatling (Open-Source)\
**Created:** [December 4, 2014, 1:04am UTC](https://community.gatling.io/t/request-method-changed-after-307-redirect/1782 "2014-12-04T01:04:03Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Lu\_Chen](https://avatars.discourse-cdn.com/v4/letter/l/f08c70/32.png) [@Lu\_Chen](https://community.gatling.io/u/Lu_Chen)\
**Post date:** [December 4, 2014, 1:04am UTC](https://community.gatling.io/t/request-method-changed-after-307-redirect/1782/1 "2014-12-04T01:04:03Z")

</div>

I’m trying to make a put request to a rest api which always 307 redirect. The original request is indeed PUT but the auto redirect request somehow become GET (according to the extraInfo in simulation.log). Is the redirected request not going to use the original request’s method?

---

<div class="post-metadata">

**Author:** ![Excilys](https://avatars.discourse-cdn.com/v4/letter/e/8797f3/32.png) [@Excilys](https://community.gatling.io/u/Excilys)\
**Post date:** [December 4, 2014, 5:47am UTC](https://community.gatling.io/t/request-method-changed-after-307-redirect/1782/2 "2014-12-04T05:47:10Z")

</div>

Really? 307 shouldn’t be doing that: [http://i23.mangareader.net/liar-game/195/liar-game-5347677.jpg](http://i23.mangareader.net/liar-game/195/liar-game-5347677.jpg)  
Which version do you use?

---

<div class="post-metadata">

**Author:** ![Excilys](https://avatars.discourse-cdn.com/v4/letter/e/8797f3/32.png) [@Excilys](https://community.gatling.io/u/Excilys)\
**Post date:** [December 4, 2014, 5:47am UTC](https://community.gatling.io/t/request-method-changed-after-307-redirect/1782/3 "2014-12-04T05:47:52Z")

</div>

Woups, proper link: [https://github.com/AsyncHttpClient/async-http-client/blob/1.9.x/src/main/java/com/ning/http/client/providers/netty/handler/Protocol.java#L147-L148](https://github.com/AsyncHttpClient/async-http-client/blob/1.9.x/src/main/java/com/ning/http/client/providers/netty/handler/Protocol.java#L147-L148)

---

<div class="post-metadata">

**Author:** ![Lu\_Chen](https://avatars.discourse-cdn.com/v4/letter/l/f08c70/32.png) [@Lu\_Chen](https://community.gatling.io/u/Lu_Chen)\
**Post date:** [December 4, 2014, 3:18pm UTC](https://community.gatling.io/t/request-method-changed-after-307-redirect/1782/4 "2014-12-04T15:18:09Z")

</div>

Hmm that’s strange. I use gatling2.0.0 so it is using ahc1.9 But see my simulation.log:

Rest 3331608238485911533-0 REQUEST setAway 1417705559728 1417705559900 1417705560260 1417705560260 OK PUTSome(307)true  
Rest 3331608238485911533-0 REQUEST setAway Redirect 1 1417705560261 1417705560637 1417705560887 1417705560887 OK GETSome(200)false

And here’s my request:

exec(http(“setAway”)  
.put("/structures/${structureId}/away")  
.queryParam(“auth”, “${token}”)  
.body(StringBody("“home”"))  
)

And here’s the extraInfo:  
.extraInfoExtractor(extraInfo =\> List(extraInfo.request.getMethod, extraInfo.response.statusCode, extraInfo.response.isRedirect))

Not sure if these are relevant, but my baseUrl is something like “[https://api.example.com](https://api.example.com)” and its Location is something like “[https://host01.example.com:8888](https://host01.example.com:8888)”

---

<div class="post-metadata">

**Author:** ![Excilys](https://avatars.discourse-cdn.com/v4/letter/e/8797f3/32.png) [@Excilys](https://community.gatling.io/u/Excilys)\
**Post date:** [December 4, 2014, 3:25pm UTC](https://community.gatling.io/t/request-method-changed-after-307-redirect/1782/5 "2014-12-04T15:25:57Z")

</div>

Me stupid!  
Gatling overrides AHC redirect handling…  
Let me check.

---

<div class="post-metadata">

**Author:** ![Excilys](https://avatars.discourse-cdn.com/v4/letter/e/8797f3/32.png) [@Excilys](https://community.gatling.io/u/Excilys)\
**Post date:** [December 4, 2014, 3:27pm UTC](https://community.gatling.io/t/request-method-changed-after-307-redirect/1782/6 "2014-12-04T15:27:35Z")

</div>

Facepalm: [https://github.com/gatling/gatling/blob/master/gatling-http/src/main/scala/io/gatling/http/ahc/AsyncHandlerActor.scala#L216-L219](https://github.com/gatling/gatling/blob/master/gatling-http/src/main/scala/io/gatling/http/ahc/AsyncHandlerActor.scala#L216-L219)

---

<div class="post-metadata">

**Author:** ![Excilys](https://avatars.discourse-cdn.com/v4/letter/e/8797f3/32.png) [@Excilys](https://community.gatling.io/u/Excilys)\
**Post date:** [December 4, 2014, 3:51pm UTC](https://community.gatling.io/t/request-method-changed-after-307-redirect/1782/7 "2014-12-04T15:51:21Z")

</div>

Fixed: [https://github.com/gatling/gatling/issues/2423](https://github.com/gatling/gatling/issues/2423)

Thanks for reporting
