forked from AkkomaGang/akkoma
Longer timeouts for user fetching.
This commit is contained in:
parent
ed1eb5deea
commit
7de3a65214
2 changed files with 7 additions and 3 deletions
|
@ -86,7 +86,7 @@ def get_template_from_xml(body) do
|
||||||
end
|
end
|
||||||
|
|
||||||
def find_lrdd_template(domain) do
|
def find_lrdd_template(domain) do
|
||||||
with {:ok, %{status_code: status_code, body: body}} when status_code in 200..299 <- @httpoison.get("http://#{domain}/.well-known/host-meta", [], follow_redirect: true) do
|
with {:ok, %{status_code: status_code, body: body}} when status_code in 200..299 <- @httpoison.get("http://#{domain}/.well-known/host-meta", [], follow_redirect: true, timeout: 10_000, recv_timeout: 20_000) do
|
||||||
get_template_from_xml(body)
|
get_template_from_xml(body)
|
||||||
else
|
else
|
||||||
e ->
|
e ->
|
||||||
|
@ -107,7 +107,7 @@ def finger(account) do
|
||||||
|
|
||||||
with {:ok, template} <- find_lrdd_template(domain),
|
with {:ok, template} <- find_lrdd_template(domain),
|
||||||
address <- String.replace(template, "{uri}", URI.encode(account)),
|
address <- String.replace(template, "{uri}", URI.encode(account)),
|
||||||
response <- @httpoison.get(address, ["Accept": "application/xrd+xml"]),
|
response <- @httpoison.get(address, ["Accept": "application/xrd+xml"], timeout: 10_000, recv_timeout: 20_000),
|
||||||
{:ok, %{status_code: status_code, body: body}} when status_code in 200..299 <- response,
|
{:ok, %{status_code: status_code, body: body}} when status_code in 200..299 <- response,
|
||||||
doc when doc != :error<- XML.parse_document(body),
|
doc when doc != :error<- XML.parse_document(body),
|
||||||
{:ok, data} <- webfinger_from_xml(doc) do
|
{:ok, data} <- webfinger_from_xml(doc) do
|
||||||
|
|
|
@ -142,7 +142,11 @@ def subscribe(subscriber, subscribed, requester \\ &request_subscription/1) do
|
||||||
requester.(subscription)
|
requester.(subscription)
|
||||||
end
|
end
|
||||||
|
|
||||||
def gather_feed_data(topic, getter \\ &@httpoison.get/1) do
|
def long_get(url) do
|
||||||
|
@httpoison.get(url, [], timeout: 10_000, recv_timeout: 20_000)
|
||||||
|
end
|
||||||
|
|
||||||
|
def gather_feed_data(topic, getter \\ &long_get/1) do
|
||||||
with {:ok, response} <- getter.(topic),
|
with {:ok, response} <- getter.(topic),
|
||||||
status_code when status_code in 200..299 <- response.status_code,
|
status_code when status_code in 200..299 <- response.status_code,
|
||||||
body <- response.body,
|
body <- response.body,
|
||||||
|
|
Loading…
Reference in a new issue