Я разрабатываю веб-сайт, связанный с базой данных SQL и веб-приложением Azure.Приложение поддерживает аутентификацию.На данный момент я могу войти в систему пользователя с помощью класса Owin OAuthAuthorizationServerProvider.
Вот код, который я использую для POST-данных входа в систему из моего файла Angularjs:
fac.login = function (user) {
var obj = {
'username': user.username, 'password': user.password,
'grant_type': 'password'
};
Object.toparams = function ObjectsToParams(obj)
{
var p = [];
for (var key in obj)
{
p.push(key + '=' + encodeURIComponent(obj[key]));
}
return p.join('&');
}
var defer = $q.defer();
$http({
method: 'post',
url: serviceBasePath + "/token",
data: Object.toparams(obj),
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
}).then(function (response) {
userService.SetCurrentUser(response.data);
defer.resolve(response.data);
}, function (error) {
defer.reject(error.data);
})
return defer.promise;
}
И яиметь дело с данными и идентификацией путем переопределения: Task GrantResourceOwnerCredentials (контекст OAuthGrantResourceOwnerCredentialsContext).
Это работает отлично.Сейчас я пытаюсь создать страницу «Вход» на основе той же структуры.
Мне кажется, я знаю, как разместить данные в AngularJS следующим образом:
fac.suscribe = function (newUser) {
var obj = {
'username': newUser.username, 'surname': newUser.surname, 'firstname': newUser.firstname,
'password1': newUser.password1, 'password2': newUser.password2, 'email': newUser.email, 'guid': newUser.guid
};
Object.toparams = function ObjectsToParams(obj) {
var p = [];
for (var key in obj) {
p.push(key + '=' + encodeURIComponent(obj[key]));
}
return p.join('&');
}
var defer = $q.defer();
$http({
method: 'post',
url: serviceBasePath + "/register",
data: Object.toparams(obj),
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
}).then(function (response){
userService.SetCurrentUser(response.data);
defer.resolve(response.data);
}, function (error) {
defer.reject(error.data);
})
return defer.promise;
}
Но яИнтересно, как я могу получить данные для генерации ответа на пост?Есть идеи по C #, желательно?