【发布时间】:2015-05-08 01:11:36
【问题描述】:
我是 AngularJS 的新手,并且有一个基本的应用程序设置了一个前端,该前端使用 web api 与数据库交互。
我正在尝试创建一个登录屏幕,因此我将其作为我的控制器,
app.controller('loginController', function ($scope, loginService) {
$scope.authenticateLogin = function () {
// get record
var user = {
Username: $scope.username,
Password: $scope.password
};
var promisePost = loginService.post(user);
promisePost.then(function (result) {
var res = result.data;
//TODO: set permissions
},
function (errorResult) {
console.log("Unable to log in. :" + errorResult);
});
}
});
哪些链接到我的服务,
app.service('loginService', function ($http) {
this.post = function (user) {
return $http.post(toApiUrl('login'), user);
}
function toApiUrl(actionUrl) {
return appBaseApiUrl + actionUrl;
}
});
然后链接到我的 API,
public class LoginController : ApiController
{
// POST api/login
public void Post(UserLogin user)
{
if (ModelState.IsValid)
{
//checks if valid
}
}
这样做的问题是,无论 API 中发生什么授权,结果总是为空,而且由于我正在发帖,所以我无法发回数据。
Angular 中有没有办法处理这个问题?谢谢。
【问题讨论】:
-
当我使用 Firefox 时,我可以看到 console.log 结果。
-
您向客户端返回什么类型的响应?您可以查看从您的帖子返回的
response.status。 -
另外,我认为您可以从帖子发回数据很重要。
-
目前还没有真正的回应,但我想使用任何潜在的回应来定义用户角色以及他们可以在网站上看到的内容。从 promisePost 返回的结果只是空的,因为我的 API 方法没有返回任何内容。在这种情况下,您将如何通过帖子发回数据?
标签: angularjs http asp.net-web-api