commit: d009a79df55c15d247b58a7d8877ef0031959371
parent: ae38b72e24107a15d7afdc5bdd1f9e389c50bbc8
Author: Roger Braun <roger@rogerbraun.net>
Date: Sun, 17 Sep 2017 14:37:00 +0200
TwitterAPI: Return proper error.
Fixes #32.
Diffstat:
2 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/lib/pleroma/web/twitter_api/twitter_api_controller.ex b/lib/pleroma/web/twitter_api/twitter_api_controller.ex
@@ -211,6 +211,11 @@ defmodule Pleroma.Web.TwitterAPI.Controller do
response <- Poison.encode!(user_map) do
conn
|> json_reply(200, response)
+ else
+ _e ->
+ conn
+ |> put_status(404)
+ |> json(%{error: "Can't find user"})
end
end
diff --git a/lib/pleroma/web/web_finger/web_finger.ex b/lib/pleroma/web/web_finger/web_finger.ex
@@ -105,13 +105,10 @@ defmodule Pleroma.Web.WebFinger do
URI.parse(account).host
end
- {:ok, template} = find_lrdd_template(domain)
-
- address = String.replace(template, "{uri}", URI.encode(account))
-
- response = @httpoison.get(address, ["Accept": "application/xrd+xml"])
-
- with {:ok, %{status_code: status_code, body: body}} when status_code in 200..299 <- response,
+ with {:ok, template} <- find_lrdd_template(domain),
+ address <- String.replace(template, "{uri}", URI.encode(account)),
+ response <- @httpoison.get(address, ["Accept": "application/xrd+xml"]),
+ {:ok, %{status_code: status_code, body: body}} when status_code in 200..299 <- response,
doc when doc != :error<- XML.parse_document(body),
{:ok, data} <- webfinger_from_xml(doc) do
{:ok, data}