Una necessità molto comune durante lo sviluppo di un sito web ASP.NET Core, è quella di testarla su un dispositivo mobile. Esistono diversi tool in commercio che permettono di simulare un browser mobile, ma se vogliamo velocemente effettuare una prova, un'altra opzione è quella di esporre Kestrel sulla rete locale e aprire il sito direttamente da un dispositivo connesso a essa.
Innanzi tutto, se stiamo utilizzando Visual Studio 2019, dobbiamo selezionare di avviare l'applicazione tramite Kestrel invece di IIS Express, tramite la dropdown nell'immagine.

Per default, e per ovvie ragioni di sicurezza, Kestrel è esposto solo a richieste provenienti da localhost, e quindi non è accessibile all'esterno della macchina di sviluppo. Per modificare questa impostazione, dobbiamo aprire il file launchSettings.json:
"WebApplication1": { "commandName": "Project", "launchBrowser": true, "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" }, "applicationUrl": "https://0.0.0.0:5001;http://0.0.0.0:5000" }
Come possiamo notare dal codice in alto, abbiamo modificato gli URL a cui è esposto il sito, impostandoli all'IP 0.0.0.0 invece che al valore di default localhost. Se stiamo utilizzando Visual Studio 2019, possiamo modificare questa impostazione anche direttamente dalle proprietà del progetto.

A questo punto, avviando l'applicazione riceveremo un prompt dal firewall di Windows per consentire l'accesso dall'esterno al nostro endpoint e, una volta acconsentito, potremo finalmente visitare il nostro sito da un qualsiasi browser connesso nella stessa LAN, semplicemente puntando l'indirizzo IP della macchina di sviluppo:

Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Testare le impostazioni CORS di un'applicazione ASP.NET Core
Utilizzare i Workspace con NPM 7
Restituire il correlation ID in caso di errore in ASP.NET Core Web API
Eseguire lo shutdown pulito di un'applicazione ASP.NET Core
Utilizzare HTTP/2 con HttpClient in .NET Core
.NET Core <3 Azure Apps
Linux development with WSL 2 and VS Code
Correlare i log in un'applicazione distribuita con ASP.NET Core
rilasciata la preview 2 di #Razor #WebAssembly 3.2. migliorata integrazione con #aspnetcore, #autenticazione, #pwa, #caching e tanto altro: https://aspit.co/bz2 potrete vedere tutte queste novità nel nostro live streaming del 2 aprile: https://aspit.co/BlazorConf-20
Abilitare la scrittura multi-pointer con InkCanvas nella Universal Windows Platform
Creare un radio button per Blazor
I più letti di oggi
- Creare un record in C#
- Winget: un nuovo package manager per Windows
- Chiamare direttamente un numero di telefono con HTML5
- Attesa e validazione manuale nelle pipeline YAML di Azure DevOps
- il 18/02 c'è il #container & #devops day! https://aspit.co/ContainerDevOpsDay-21 Le iscrizioni sono sempre aperte e la Call For Paper è attiva fino al 28/01! #aspilive #cfp