Simplify error catching

This commit is contained in:
Michael Shamoon
2022-11-07 09:24:15 -08:00
parent 00163d2f44
commit 8a783ba9f6
41 changed files with 93 additions and 113 deletions

View File

@@ -1,22 +1,20 @@
import useSWR from "swr";
import { useTranslation } from "next-i18next";
import Block from "components/services/widget/block";
import Container from "components/services/widget/container";
import { formatProxyUrl } from "utils/proxy/api-helpers";
import useWidgetAPI from "utils/proxy/use-widget-api";
export default function Component({ service }) {
const { t } = useTranslation();
const { widget } = service;
const { data: plexData, error: plexAPIError } = useSWR(formatProxyUrl(widget, "unified"), {
const { data: plexData, error: plexAPIError } = useWidgetAPI(widget, "unified", {
refreshInterval: 5000,
});
if (plexAPIError || plexData?.error) {
const finalError = plexAPIError ?? plexData.error;
return <Container error={finalError} />;
if (plexAPIError) {
return <Container error={plexAPIError} />;
}
if (!plexData) {

View File

@@ -67,7 +67,7 @@ export default async function plexProxyHandler(req, res) {
let [status, apiData] = await fetchFromPlexAPI("/status/sessions", widget);
if (status !== 200) {
return res.status(status).json({error: {message: "HTTP error communicating with Plex API", data: apiData}});
return res.status(status).json({error: {message: "HTTP error communicating with Plex API", data: Buffer.from(apiData).toString()}});
}
if (apiData && apiData.MediaContainer) {