From 033ed9e95551bbe9f09101dc46baaa560a9eeafe Mon Sep 17 00:00:00 2001 From: William Bishop Date: Wed, 19 Jul 2023 15:40:06 +0200 Subject: [PATCH 1/2] Error handling for JSON.parse() in initMiro.ts --- examples/monetization-with-stripe/initMiro.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/examples/monetization-with-stripe/initMiro.ts b/examples/monetization-with-stripe/initMiro.ts index 011ff64bd..dfe65e44c 100644 --- a/examples/monetization-with-stripe/initMiro.ts +++ b/examples/monetization-with-stripe/initMiro.ts @@ -19,6 +19,14 @@ export default function initMiro( const tokensCookie = "miro_tokens"; const userIdCookie = "miro_user_id"; + let userId; + + try { + userId = JSON.parse(request.cookies[tokensCookie] || "null")?.userId + } catch { + userId = null + } + // setup a Miro instance that loads tokens from cookies return { miro: new Miro({ @@ -42,6 +50,6 @@ export default function initMiro( }, }, }), - userId: JSON.parse(request.cookies[tokensCookie] || "null")?.userId, + userId, }; } From 884fcaed32841801029144ca7708797119823a50 Mon Sep 17 00:00:00 2001 From: William Bishop Date: Wed, 19 Jul 2023 15:45:08 +0200 Subject: [PATCH 2/2] Catch error in suggested handling of JSON.parse() in initMiro.ts Co-authored-by: Mettin Parzinski --- examples/monetization-with-stripe/initMiro.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/monetization-with-stripe/initMiro.ts b/examples/monetization-with-stripe/initMiro.ts index dfe65e44c..25f1e65ca 100644 --- a/examples/monetization-with-stripe/initMiro.ts +++ b/examples/monetization-with-stripe/initMiro.ts @@ -23,7 +23,7 @@ export default function initMiro( try { userId = JSON.parse(request.cookies[tokensCookie] || "null")?.userId - } catch { + } catch (e) { userId = null }