httpoison在帖子后跟进重定向

时间:2016-05-31 18:56:32

标签: curl elixir phoenix-framework

我试图在凤凰应用程序中用HTTPoison模仿curl命令

curl -k -L -b $COOKIES -c $COOKIES -d j_username=$USER -d j_password=$PASSWORD "$HOST/authenticated/j_security_check"

我收到一个异步响应,但我没有看到我会卷曲的身体。我错过了HTTPoision呼叫中的另一个选项吗?

HTTPoison.post("HOST/authenticated/j_security_check", {:form, [j_username: 'USERNAME', j_password: 'PASSWORD']}, %{"Content-type" => "application/x-www-form-urlencoded", "User-Agent" => "test"}, hackney: [:insecure], hackney: [cookie: elem(acookie, 1).headers], follow_redirect: true)

1 个答案:

答案 0 :(得分:0)

来自hackney docs(HTTPoison所基于的),如果状态为303,hackney将仅关注HTTP Post上的重定向:

  

如果为请求提供了{follow_redirect,true}选项,则客户端将能够自动遵循重定向并检索正文。可以使用{max_redirect,Max}选项设置最大连接数。默认值为5.

     

客户将按照301,302&的重定向进行操作。 307如果方法是get或head。如果使用另一种方法,将返回元组{ok,maybe_redirect,Status,Headers,Client}。如果方法是POST,它将只遵循303重定向(见其他)。