Форум программистов, компьютерный форум, киберфорум
C#: ASP.NET Core
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 06.04.2023
Сообщений: 13
1
.NET 8

Blazor Авторизация

25.03.2024, 22:11. Показов 911. Ответов 5

Author24 — интернет-сервис помощи студентам
Здравствуйте,использую Blazor APP
проблема заключается в следующем, у меня в коде есть пустые переменные login и password, при вводе логина и пароля метод Login обращается к этим переменным и соотвественно выходит предупреждение :
message = "Введите имя пользователя и пароль.";
почему то inputText игнорируются, помогите(
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<div class="login-container">
    <h2>Авторизация</h2>
    <EditForm formname="loginForm" EditContext="editContext" OnSubmit="LoginCode">
 
        <div class="form-group">
            <label for="login">Имя пользователя:</label>
            <InputText id="Login" @bind-Value="Login" required />
        </div>
 
        <div class="form-group">
            <label for="password">Пароль:</label>
            <InputText id="Password" @bind-Value="Password" type="password" required />
        </div>
 
        <div class="form-group">
            <button type="submit">Войти</button>
        </div>
    </EditForm>
</div>
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
@code {
 
    private string login = "1";
    private string password = "1";
    private string message;
 
    private EditContext editContext;
 
    protected override void OnInitialized()
    {
        editContext = new EditContext(this);
    }
 
    private async Task Login()
    {
        if (string.IsNullOrWhiteSpace(login) || string.IsNullOrWhiteSpace(password))
        {
            message = "Введите имя пользователя и пароль.";
            return;
        }
 
        var loginValue = login;
        var passwordValue = password;
 
        // отправка запроса с использованием значений из полей ввода
        var response = await httpClient.PostAsJsonAsync("https://localhost:7228/Auth/login", new { Login = loginValue, Password = passwordValue });
 
        if (response.IsSuccessStatusCode)
        {
            message = "Вы успешно вошли.";
 
            // Получаем текущее состояние аутентификации с помощью CustomAuthenticationStateProvider
            var token = await AuthenticationStateProvider.GetTokenFromServer(loginValue, passwordValue);
 
            // В этом месте вы можете использовать authenticationState, если это необходимо
            // Например, проверить, аутентифицирован ли пользователь, и в зависимости от этого выполнить определенные действия
 
            navigationManager.NavigateTo("/");
        }
        else
        {
            var errorMessage = await response.Content.ReadAsStringAsync();
            message = "Ошибка входа: " + errorMessage;
        }
    }
 
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.03.2024, 22:11
Ответы с готовыми решениями:

Server-side Blazor, аутентификация/авторизация
Задайте, пожалуйста, хотя бы общие направления (может подробные мануалы есть?). По туториалам и по...

Переадресация в Blazor
Добрый день! При запуске default app показывается страница Index.razor. 1. Где определяется...

TreeView in Blazor
Уважаемые Гуру! Есть ли бесплатный контрол treeView в MDB (под Blazor)? Правильно ли я...

Blazor + JavaScript
Всех с наступившим 2020 годом. В этом году решил осилить Blazor и вот не задача столкнулся с...

Blazor и Safari?
Вроде бы, на сайте MS заявлена поддержка в т.ч. и Safari. Однако, оно даже на минимальном...

5
403 / 265 / 69
Регистрация: 12.04.2020
Сообщений: 1,406
25.03.2024, 22:21 2
Цитата Сообщение от elina78457 Посмотреть сообщение
@bind-Value="Login"
Цитата Сообщение от elina78457 Посмотреть сообщение
@bind-Value="Password"
потому что у вас никакой привязки нет
0
0 / 0 / 0
Регистрация: 06.04.2023
Сообщений: 13
26.03.2024, 11:19  [ТС] 3
а как сделать привязку?

Добавлено через 6 минут
А как сделать привязку? Подскажитее пожалуйста
0
1504 / 1052 / 146
Регистрация: 01.10.2009
Сообщений: 3,537
Записей в блоге: 1
26.03.2024, 11:24 4
Цитата Сообщение от elina78457 Посмотреть сообщение
А как сделать привязку? Подскажитее пожалуйста
почитать документацию
0
403 / 265 / 69
Регистрация: 12.04.2020
Сообщений: 1,406
27.03.2024, 21:55 5
Лучший ответ Сообщение было отмечено elina78457 как решение

Решение

https://metanit.com/sharp/blazor/2.7.php
1
0 / 0 / 0
Регистрация: 06.04.2023
Сообщений: 13
28.03.2024, 02:02  [ТС] 6
Большое вам спасибо, проблему решила!
0
28.03.2024, 02:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.03.2024, 02:02
Помогаю со студенческими работами здесь

Виртуализация в Blazor
Добрый вечер. На работе стоит задача выбрать SPA фреймворк под новый проект. Главным критерием стал...

Blazor: 'h3' inside 'address'
Скопипастил кусок рабочей разметки из ангуляр-проекта. Студия сразу же подчеркнула h3-тэги с...

blazor динамический svg
Как в блейзоре правильно перерисовывать &lt;svg &lt;/svg&gt; ? Если делать какой то биндинг внутри этого...

Регистрация сервисов в Blazor
Добрый день уважаемые форумчане! Создаю Web-приложении на технологии Blazor Server и столкнулся...

Выпадающее меню в Blazor
Добрый день! Подскажите , пожалуйста, как можно сделать выпадающее меню в Blazor?

VS 2019 и поддержка Blazor
Установил 6-й превью .NET Core 3. Установил VS Code с плагинами. Создал Blazor-проект через CLI....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru