Blazor/.NET 8/Web API в проекте сервера Blazor не работаетC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Blazor/.NET 8/Web API в проекте сервера Blazor не работает

Сообщение Anonymous »


Я начал новый проект Blazor с новой автоматической настройкой .NET 8.

Я пытаюсь разместить контроллер веб-API в своем серверном проекте и использовать функцию аутентификации личности ASP.NET, чтобы убедиться, что кто-то вошел в систему и т. д.

Вот настройка моего контроллера API:

[Route("api/[controller]")] общедоступный класс TestDataController: ApiController { частная среда IWebHostEnvironment только для чтения; общедоступный TestDataController (среда IWebHostEnvironment) { this.environment = окружающая среда; } [HttpGet] общедоступный IHttpActionResult Get() { строковый путь = Path.Combine(environment.WebRootPath); строка returnData = $"filename: {"1"} | путь: {путь}"; вернуть ОК (returnData); } } Тогда в моем клиентском проекте у меня есть такая настройка:

Program.cs в клиентском проекте:

builder.Services.AddHttpClient("WebAPI", клиент => client.BaseAddress = новый Uri(builder.Configuration["BaseAddress"])); builder.Services.AddScoped(sp => sp.GetRequiredService() .CreateClient("WebAPI")); Razor.cs

@page "/api-call" @using App.Client.Services @using System.Net.Http.Headers @using Syncfusion.Blazor.Buttons @используя System.Text.Json @inject IHttpClientFactory HttpClientFactory @inject CookieService CookieService @rendermode InteractiveWebAssembly ApiCall @if (APIValue!= ноль) { @APIValue } еще { Загрузка товаров... } @код { частная строка APIValue {get; набор; } защищенное переопределение асинхронной задачи OnInitializedAsync() { } частная асинхронная задача onToggleClick() { вар httpClient = HttpClientFactory.CreateClient("WebAPI"); //var cookie = await CookieService.GetCookieValue("YourCookieName"); // httpClient.DefaultRequestHeaders.Authorization = // новое AuthenticationHeaderValue("Bearer", cookie); пытаться { APIValue = ожидание httpClient.GetFromJsonAsync("TestData"); } catch (HttpRequestException ex) // Не удалось { Console.WriteLine("Произошла ошибка."); APIValue = $"ошибка {ex.Message}"; } catch (NotSupportedException) // Когда тип контента недействителен { Console.WriteLine("Тип контента не поддерживается."); } catch (JsonException) // Неверный JSON { Console.WriteLine("Неверный JSON."); } } } Я продолжаю видеть ошибку:

Не найдена веб-страница по веб-адресу: https://localhost:44309/api/testdata

Чего мне не хватает, чтобы это заработало?

У меня пока нет атрибута авторизации на контроллере, потому что я собирался сначала протестировать его без входа в систему.

Спасибо
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • _framework/blazor.web.js не загружается с 404 при изменении базового URL -адреса .NET 8 Blazor Web App
    Anonymous » » в форуме C#
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous
  • Как поделиться авторизацией, реализованной в серверном проекте, с клиентским проектом в проекте Blazor Web App Auto?
    Anonymous » » в форуме C#
    0 Ответы
    43 Просмотры
    Последнее сообщение Anonymous
  • Blazor Web App vs Blazor Web Assembly Standalone
    Anonymous » » в форуме C#
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Ошибка Bad Gateway (502) при вызове API Core Core .NET .NET из другого API Core .NET .NET .NET .NET
    Anonymous » » в форуме C#
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Ошибка Bad Gateway (502) при вызове API Core Core .NET .NET из другого API Core .NET .NET .NET .NET
    Anonymous » » в форуме C#
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»