From f692f745533fa0a27e0ba5cf3afc16139d844962 Mon Sep 17 00:00:00 2001 From: Roman Timashev Date: Tue, 6 Sep 2022 13:51:41 +0300 Subject: [PATCH] improve stability of encodeImageToBlurhash --- src/remote/image.ts | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/remote/image.ts b/src/remote/image.ts index 464f6600..a31c74f3 100644 --- a/src/remote/image.ts +++ b/src/remote/image.ts @@ -1,13 +1,23 @@ import sharp from "sharp" -export async function encodeImageToBlurhash(url: string) { - const res = await fetch(url) - if (!res.ok) { +async function fetchBuffer(url: string) { + try { + const res = await fetch(url) + if (!res.ok) { + return undefined + } + const data = await res.arrayBuffer() + return Buffer.from(data) + } catch (error) { return undefined } +} - const data = await res.arrayBuffer() - const buffer = Buffer.from(data) +export async function encodeImageToBlurhash(url: string) { + const buffer = await fetchBuffer(url) + if (!buffer) { + return undefined + } const t = sharp(buffer) .raw()