Add missing URL encoding in create authorization redirect

This commit is contained in:
Dominique Feyer 2018-09-09 23:31:47 +02:00
parent 3f64ba5fc8
commit b79c126ee0

View file

@ -39,15 +39,18 @@ def create_authorization(conn, %{
}) })
else else
connector = if String.contains?(redirect_uri, "?"), do: "&", else: "?" connector = if String.contains?(redirect_uri, "?"), do: "&", else: "?"
url = "#{redirect_uri}#{connector}code=#{auth.token}" url = "#{redirect_uri}#{connector}"
url_params = %{:code => auth.token}
url = url_params =
if params["state"] do if params["state"] do
url <> "&state=#{params["state"]}" Map.put(url_params, :state, params["state"])
else else
url url_params
end end
url = "#{url}#{Plug.Conn.Query.encode url_params}"
redirect(conn, external: url) redirect(conn, external: url)
end end
end end