Negli script precedenti abbiamo visto come si può consumare web service REST JSON. Una particolarità delle Windows Store app (e non solo) è il livello di isolamento di default che queste hanno nei confronti di web service esposti dalla macchina locale.
Un'app, infatti, non può richiamare servizi da localhost (127.0.0.1) ad eccezione che questa non sia stata lanciata da Visual Studio, in modalità di debug.
Il livello di isolamento può essere controllato dall'utility CheckNetIsolation.exe, tool fornito nel sistema operativo per gestire appunto le restrizioni di loopback dei vari software.
Nel contesto delle Windows Store app, possiamo abilitare (ai fini puramente di test) una specifica app ad accedere ai servizi locali invocando la funzione LoopbackExempt con i parametri -a -n={Package family name}.
%windir%\system32\CheckNetIsolation LoopbackExempt -a -n=test_5pz5dbbszm52j
Il Package family name può essere facilmente recuperato dall'editor visuale del manifest presente in Visual Studio.
CheckNetIsolation ha anche altre opzioni come, ad esempio, mostrare la lista delle app abilitate LoopbackExempt -s.
Tutte queste funzionalità sono incapsulate comodamente da Fiddler (http://www.telerik.com/fiddler) nell'AppContainer Loopback Exempion Utility.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Usare lo spread operator con i collection initializer in C#
Usare un KeyedService di default in ASP.NET Core 8
Routing statico e PreRendering in una Blazor Web App
Effettuare il refresh dei dati di una QuickGrid di Blazor
Sfruttare GPT-4o realtime su Azure Open AI per conversazioni vocali
Sfruttare lo stream rendering per le pagine statiche di Blazor 8
Utilizzare un service principal per accedere a Azure Container Registry
Effettuare il binding di date in Blazor
Creare gruppi di client per Event Grid MQTT
Supporto ai tipi DateOnly e TimeOnly in Entity Framework Core
Creare un webhook in Azure DevOps
Evitare (o ridurre) il repo-jacking sulle GitHub Actions