我想在我的应用程序中充当某些请求的代理。 例如:如果用户请求链接" http://myapp/proxy" ,我想将请求转发到外部网站并检索对用户的响应。 这里的问题是我不想进行URL重定向,但我想转发客户端请求,代表用户行事。
我怎样才能使用Phoenix框架?
答案 0 :(得分:4)
为了完整起见,这就是我所做的:
case HTTPoison.get(url) do
{ :ok, response } -> conn |> put_resp_content_type(response.headers["Content-Type"]) |> send_resp(response.status_code, response.body)
{ :error, _error } -> conn |> put_status(:bad_gateway) |> render(AssetsProxy.ErrorView, "502.html")
end
对于整个灵药/凤凰派对来说还是很新的,所以我确信有些东西需要改进。例如它无法正确处理重定向。
答案 1 :(得分:0)
To" return"将数据返回给客户端,代码如下:
HTTPoison.start
response = HTTPoison.post!(url, body, [])
conn |> halt |>
html response.body