В Blazor Server приложении можно получить содержимое тела запроса в коде C# с использованием объекта HttpContext. Вот пример кода, который позволит получить сырые данные из запроса:
1. Добавьте сервис IHttpContextAccessor в Startup.cs:
```csharp
services.AddHttpContextAccessor();
```
2. В классе компонента Blazor, где требуется получить тело запроса, добавьте зависимость на IHttpContextAccessor и используйте его для доступа к HttpContext:
```csharp
@page "/login"
@inject IHttpContextAccessor HttpContextAccessor
<button @onclick="HandleLoginClick">Войти</button>
@code {
private async Task HandleLoginClick()
{
var context = HttpContextAccessor.HttpContext;
var bodyStream = context.Request.Body;
// Далее вы можете использовать bodyStream для обработки тела запроса
}
}
```
Обратите внимание, что IHttpContextAccessor должен быть зарегистрирован как сервис в Startup.cs, чтобы он был доступен для внедрения зависимостей в компонент Blazor.
В отношении перехода на Blazor WebAssembly (WASM), в общем случае код будет иметь другую архитектуру и подход, и вам придется переделать код вашего приложения, чтобы работать в среде WASM. В WASM компоненты Blazor выполняются в браузере и взаимодействуют с сервером с помощью API HTTP, а не с использованием SignalR или HttpContext.