[{"data":1,"prerenderedAt":152},["ShallowReactive",2],{"til-dynamic-email-urls":3},{"id":4,"title":5,"body":6,"date":137,"description":138,"extension":139,"language":140,"meta":141,"navigation":142,"path":143,"seo":144,"stem":145,"tags":146,"__hash__":151},"til/til/dynamic-email-urls.md","E-Mail Links dynamisch aus Request-URL ableiten",{"type":7,"value":8,"toc":135},"minimark",[9,17,22,77,82,124,131],[10,11,12,16],"p",{},[13,14,15],"strong",{},"Problem:"," Preview-Deployment schickt E-Mails mit Links auf Production — wo das Feature noch gar nicht existiert.",[10,18,19],{},[13,20,21],{},"Falsch:",[23,24,29],"pre",{"className":25,"code":26,"language":27,"meta":28,"style":28},"language-typescript shiki shiki-themes github-light github-dark","const loginUrl = `${process.env.BASE_URL}/login`\n// → immer intellibrain.ch, auch auf Preview\n","typescript","",[30,31,32,70],"code",{"__ignoreMap":28},[33,34,37,41,45,48,52,56,59,62,64,67],"span",{"class":35,"line":36},"line",1,[33,38,40],{"class":39},"szBVR","const",[33,42,44],{"class":43},"sj4cs"," loginUrl",[33,46,47],{"class":39}," =",[33,49,51],{"class":50},"sZZnC"," `${",[33,53,55],{"class":54},"sVt8B","process",[33,57,58],{"class":50},".",[33,60,61],{"class":54},"env",[33,63,58],{"class":50},[33,65,66],{"class":43},"BASE_URL",[33,68,69],{"class":50},"}/login`\n",[33,71,73],{"class":35,"line":72},2,[33,74,76],{"class":75},"sJ8bj","// → immer intellibrain.ch, auch auf Preview\n",[10,78,79],{},[13,80,81],{},"Richtig:",[23,83,85],{"className":25,"code":84,"language":27,"meta":28,"style":28},"const origin = getRequestURL(event).origin\nconst loginUrl = `${origin}/login`\n// → feature-branch.intellibrain.pages.dev ✓\n",[30,86,87,103,118],{"__ignoreMap":28},[33,88,89,91,94,96,100],{"class":35,"line":36},[33,90,40],{"class":39},[33,92,93],{"class":43}," origin",[33,95,47],{"class":39},[33,97,99],{"class":98},"sScJk"," getRequestURL",[33,101,102],{"class":54},"(event).origin\n",[33,104,105,107,109,111,113,116],{"class":35,"line":72},[33,106,40],{"class":39},[33,108,44],{"class":43},[33,110,47],{"class":39},[33,112,51],{"class":50},[33,114,115],{"class":54},"origin",[33,117,69],{"class":50},[33,119,121],{"class":35,"line":120},3,[33,122,123],{"class":75},"// → feature-branch.intellibrain.pages.dev ✓\n",[10,125,126,127,130],{},"Nitro's ",[30,128,129],{},"getRequestURL(event)"," gibt dir die tatsächliche Request-URL. Funktioniert auf localhost, Preview und Production — ohne Environment-Variablen jonglieren.",[132,133,134],"style",{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}",{"title":28,"searchDepth":72,"depth":72,"links":136},[],"2025-01-28","Problem: Preview-Deployment schickt E-Mails mit Links auf Production — wo das Feature noch gar nicht existiert.","md","de",{},true,"/til/dynamic-email-urls",{"title":5,"description":138},"til/dynamic-email-urls",[147,148,149,150],"nuxt","nitro","email","cloudflare","unU7PXl1Vq6UKPb1M-4qR_bVBsaMrxNu8r5mzLqOUiY",1789790494209]