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
1 changed files with 7 additions and 4 deletions

View File

@ -39,15 +39,18 @@ def create_authorization(conn, %{
})
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
url <> "&state=#{params["state"]}"
Map.put(url_params, :state, params["state"])
else
url
url_params
end
url = "#{url}#{Plug.Conn.Query.encode url_params}"
redirect(conn, external: url)
end
end