Skip to content

FLEX-08: frontend, CORS en configuratie-templates omzetten naar de nieuwe Function App-hostname #1071

Description

@Jaapbeus

Onderdeel van #1063Fase 1, plan-migratie op .NET 9.

Doel

Alle plekken vinden en aanpassen waar de Blazor Admin-GUI en de Static Web App naar de Function
App-hostname verwijzen, zodat de cutover in FLEX-09 een schakelaar is en geen zoektocht.

Context

Omdat in-place plan-migratie niet bestaat, krijgt de nieuwe app een andere hostname. De SWA dient
alleen statische bestanden — er is geen SWA-proxying — dus de Blazor WASM-client roept de Function App
rechtstreeks aan met een Bearer-token. Elke plek waar die basis-URL vandaan komt, moet mee.

CORS is hier het stille faalpunt: een CORS-fout is niet zichtbaar in de CI, niet op :5242 en niet op
de SWA CLI-emulator op :4280. Hij verschijnt pas in de browserconsole van de live-omgeving, en dan
als een pagina die leeg blijft in plaats van een duidelijke foutmelding.

Taken

  • Alle verwijzingen naar de Function App-hostname inventariseren, minimaal:
    • BlazorAdmin/wwwroot/appsettings.Production.template.json (CI-substitutie)
    • BlazorAdmin/wwwroot/appsettings.json (localhost-config)
    • staticwebapp.config.json
    • GitHub Variables die de API-basis-URL bevatten
  • CORS-origins op de nieuwe Flex-app instellen voor de SWA-hostname
    ([swa-url].azurestaticapps.net) en, indien in gebruik, het eigen domein
  • Controleren of er een custom domain gekoppeld is aan de huidige Function App; Flex gebruikt
    site-scoped certificaten, een ander model dan het huidige
  • docs/CUSTOM-DOMAIN.md nalopen op hostnames en redirect-URI's
  • Controleren dat de CSP-guard uit stap f van de verificatielus nog slaagt op de publish-output
    (geen inline script, geen import-map) — die is onafhankelijk van dit issue, maar een
    hostname-wijziging in index.html-templating is precies het soort verandering dat hem breekt
  • Een testpad inrichten waarmee de Blazor-app tijdelijk tegen de Flex-app kan praten, zodat dit
    vóór de cutover in een echte browser te verifiëren is

Acceptatiecriteria

  • Er is een uitputtende lijst van plekken die de hostname bevatten, en alle staan op een
    configuratiewaarde — geen enkele hardcoded hostname in broncode (multi-club-invariant)
  • CORS is zo geconfigureerd dat een ingelogde sessie op de SWA daadwerkelijk gegevens laadt vanaf de
    Flex-app, geverifieerd in een browser, niet alleen met een HTTP-statuscode
  • De CSP-guard op de publish-output slaagt nog

Redactieplicht

Geen echte SWA-URL, hostname of clubdomein in dit issue of in een PR-body. Placeholders:
[swa-url].azurestaticapps.net, func-[clubcode]-sportlink, [club-domein].

Afhankelijkheden

Volgt op FLEX-05, hangt samen met FLEX-06 (redirect-URI's). Blokkeert FLEX-09.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    discipline: architectArchitectural decision requiredpriority: highShould be resolved before other issuesstatus: triageNeeds investigation or clarificationtype: choreMaintenance — no functional change

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions