Ona je to vlastně ještě jedna varianta, příbuzná variantě 3, ale v produkci se obvykle nepoužívá. Z hlediska CORS se za shodnou adresu považuje trojkombinace protokol, hostname a port – jsou to dva nezávislé servery. Kdybych u toho bodu 3 škrtnul to upřesnění „na samostatných doménách“, to vaše řešení by tomu plně odpovídalo.
Důvod, proč se tohle řešení v produkci nepoužívá, je ten nestandardní port. U API by to teoreticky nemuselo vadit, uživatel to nevidí a v aplikaci je ten port zadaný. Jenže ve spoustě sítí se na nestandardní port nedostanete, takže by z nich ta vaše aplikace nebyla funkční (načetla by se statická stránka, ale API by bylo nedostupné). Proto se to v takovém případě nahradí variantou 2, kdy byst požadavky třeba na /api/* směřoval z webového serveru (IIS) na ten váš aplikační server (Tomcat na portu 8443). Uživatel by tedy vždy komunikoval jen s IIS na standardním HTTPS portu, a váš Tomcat pak nemusí být vůbec vystaven do internetu, bude se k němu přistupovat vždy jen prostřednictvím IIS. (Akorát tedy nevím, jak se takovéhle přeposílání požadavků na IIS konfiguruje – hledejte spojení „reverzní proxy“ / „reverse proxy“.) Je pak potřeba, aby to API mělo svůj jmenný prostor, abyste dokázal rozlišit, zda jde požadavek na statickou stránku nebo na API. Dobré je mít tam nějaký společný prefix, třeba právě to /api/.