Loading...
VenelinGrozev avatar VenelinGrozev 130 Точки

[Homework] ASP.NET Web API - User Logins

Здравейте,

Регистрирах потребител през Постман-а и го логнах след това. Когато обаче се опитам да проверя кой е логнат в момента с string currentUserId = this.User.Identity.GetUserId(); винаги получавам null. В таблицата AspNetUserLogins същевременно не се появява запис, че някой се е логнал въпреки, че при логина се връща access token.

Та въпросите ми в случая са:

- трябва ли да след логин да се появи запис в AspNetUserLogins таблицата?

- защо this.User.Identity.GetUserId(); връща null?

Тагове:
1
C# Web Services & Cloud
thepowerof4 avatar thepowerof4 98 Точки

И аз закучих на логин функционалността. Както е споменато, няма такъв метод. Лошото е че и при регистрация не връща token и разглеждайки register метода, то наистина връща само един празен Ok(); и не логва юзъра. В базата данни се вижда, че е регистриран юзър. Въпросите ми към екипа на курса са два - как да го накараме да връща token при регистрация и как да създадем стандартен логин? Как трябва да си решим домашното, без това? Показаният от nikola.m.nikolov по-горе линк дава отговор как Наков го е направил, това ли трябва да ползваме?

P.S Не мога да го накрам да сработи - използвайки логин методите на Наков, заявката ми връща 400 Not Found - с подобреният метод. С другият това:
{
  "Message": "No HTTP resource was found that matches the request URI 'http://localhost:7151/api/Token'.",
  "MessageDetail": "No type was found that matches the controller named 'Token'."
}

Да разбирам ли че Microsoft са направили промени? VS2015.

0
20/08/2015 20:34:29
a.angelov avatar a.angelov 1316 Точки

Стандартния логин е на адрес: http://localhost:{port}/token 

Аз засега така правя логването, не съм се мъчил да го правя през регистрацията да връща тоукън...

 

Едит - няма api пред /token - затова ти връща, че нямаш такъв ресурс.

1
20/08/2015 20:38:16
thepowerof4 avatar thepowerof4 98 Точки

Бладгаря, промених препратката в метода на Наков от /api/Token на /Token и сработи. Най-накрая!

0
VenelinGrozev avatar VenelinGrozev 130 Точки

Само да допълня Анатоли, че линка за логване се конфигурира в App_Start/Startup.Auth.cs файла в реда с

TokenEndpointPath = new PathString("/Token")

Хвърли едно око на <този въпрос в stackoverflow>. Там едно индийче го е описало добре.

2
20/08/2015 20:55:39
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.