Упражнение. Локальное выполнение веб-приложения
В этом упражнении вы выполните следующие действия.
- Запустите веб-приложение локально и просмотрите его в браузере.
- Ознакомьтесь с тем, как обслуживается веб-приложение.
Запуск веб-приложения и просмотр в браузере
Запустите веб-приложение в Visual Studio Code и просмотрите в браузере:
В Visual Studio Code нажмите клавишу F5 , чтобы запустить приложение.
Visual Studio Code.
- Активирует команду
dotnet run.NET CLI, которая создает и запускает приложение. - Присоединяет отладчик к работающему приложению.
При первом запуске проекта в Visual Studio Code отображается запрос отладчика Select.
- Активирует команду
В строке выбора отладчика в палитре команд в верхней части пользовательского интерфейса Visual Studio Code выберите C#. В следующем запросе выберите конфигурацию запуска по умолчанию (
C#: MyWebApp [Default Configuration]):
Браузер по умолчанию запускается
http://localhost:{PORT}по адресу, в котором отображается ответ приложения. Заполнитель{PORT}— это случайный порт, назначенный приложению при создании проекта приложения. Если необходимо изменить порт из-за конфликта локального порта, измените порт в файле свойств или launchSettings.json проекта.Ответ, отображаемый в браузере:
Закройте окно браузера.
В Visual Studio либо:
- В меню "Запуск" выберите "Остановить отладку".
- Нажмите клавиши SHIFT+F5 на клавиатуре.
Запустите веб-приложение с помощью интерфейса командной строки .NET:
В терминале или командной строке перейдите в каталог проекта MyWebApp, содержащий файл MyWebApp.csproj.
Выполните сборку и запуск приложения с помощью следующей команды:
dotnet runПроект построен, выполняется и отображает следующие выходные данные в командной строке:
C:\MyWebApp> dotnet run Building... info: Microsoft.Hosting.Lifetime[14] Now listening on: http://localhost:5267 info: Microsoft.Hosting.Lifetime[0] Application started. Press Ctrl+C to shut down.Так как номер порта в URL-адресе указан случайным образом в конфигурации при создании проекта, конечная точка может иметь другой номер порта.
Откройте браузер для URL-адреса, созданного в выходных данных командной строки, отображается ответ
Hello World!приложения:
Чтобы завершить работу приложения, нажмите клавиши CTRL+C в командной строке.
Как обслуживается веб-приложение
При создании и запуске приложения выполняются следующие действия.
Сборка и конфигурация:
- MSBuild вызывается для восстановления зависимостей и компиляции проекта. MSBuild обрабатывает файл проекта MyWebApp.csproj и компилирует исходный код в сборку.
- Приложение считывает параметры конфигурации, включая параметры, указанные в launchSettings.json для профиля запуска по умолчанию (первый указанный).
Настройка узла:
- Метод
WebApplication.CreateBuilderв Program.cs настраивает веб-узел. По умолчанию этот метод настраивает Kestrel как веб-сервер. Kestrel — это кроссплатформенный веб-сервер для ASP.NET Core, предназначенный для обеспечения высокой производительности. - Kestrel начинает прослушивать входящие HTTP-запросы по настроенным URL-адресам, включая HTTPS, если указано.
Обработка запросов:
- При получении запроса Kestrel перенаправит его в конвейер по промежуточного слоя ASP.NET Core.
- Конвейер ПО промежуточного слоя обрабатывает запрос с помощью ряда компонентов ПО промежуточного слоя, которые могут обрабатывать такие задачи, как проверка подлинности, ведение журнала и маршрутизация.
- Если запрос соответствует определенному маршруту, выполняется соответствующая конечная точка. В этом случае конечная
app.MapGet("/", () => "Hello World!")точка обрабатывает запросы к корневому URL-адресу и возвращает строкуHello World!.
Ответ:
- Ответ, который в данном случае является строкой "Hello World!", отправляется обратно через конвейер ПО промежуточного слоя в Kestrel, который затем отправляет его обратно клиенту.