rich media: gracefully handle fetching nil URIs
This commit is contained in:
parent
155a884300
commit
8f2f471e94
|
@ -5,11 +5,19 @@ defmodule Pleroma.Web.RichMedia.Parser do
|
||||||
Pleroma.Web.RichMedia.Parsers.OEmbed
|
Pleroma.Web.RichMedia.Parsers.OEmbed
|
||||||
]
|
]
|
||||||
|
|
||||||
|
def parse(nil), do: {:error, "No URL provided"}
|
||||||
|
|
||||||
if Mix.env() == :test do
|
if Mix.env() == :test do
|
||||||
def parse(url), do: parse_url(url)
|
def parse(url), do: parse_url(url)
|
||||||
else
|
else
|
||||||
def parse(url),
|
def parse(url) do
|
||||||
do: Cachex.fetch!(:rich_media_cache, url, fn _ -> parse_url(url) end)
|
with {:ok, data} <- Cachex.fetch(:rich_media_cache, url, fn _ -> parse_url(url) end) do
|
||||||
|
data
|
||||||
|
else
|
||||||
|
_e ->
|
||||||
|
{:error, "Parsing error"}
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
defp parse_url(url) do
|
defp parse_url(url) do
|
||||||
|
|
Loading…
Reference in New Issue