gsi*_*dze 2 javascript angularjs
我是棱角分明的新人,如果我的问题有点低,请不要生我的气.
如果用户将通过auth,我有web服务返回sessionId和登录成功消息.例如url是:
这是我的回答:
{"sessionId":"0997cec2a8b34c84ba8419ab1204e6aa","loginSucceeded":true}
Run Code Online (Sandbox Code Playgroud)
这是我的登录控制器:
app.controller('loginCtrl', function($scope, loginService){
$scope.login=function(user){
loginService.login(user);
}
});
Run Code Online (Sandbox Code Playgroud)
这是我的服务:
app.factory('loginService', function($http){
return{
login: function(user){
var $promise=$http.post('http://localhost:8181/login?', user);
$promise.then(function(msg){
if(msg.loginSucceeded=="true")
console.log("opa")
else
console.log("den");
});
}
}
});
Run Code Online (Sandbox Code Playgroud)
我的范围内有user.username和user.password(使用文本框).
如何在url中传递这些参数以及如何解析该响应?
在您的代码中,您将在POST请求的URL中传递用户名和密码.如果这是你真正想要的(将它们作为POST数据传递更常见),那么你可以使用它:
login: function(user){
var url = 'http://localhost:8181/login?username=' + user.name + '&password=' + user.password;
$http.post(url).then(function(msg){
if(msg.loginSucceeded==="true"){
console.log("opa")
}else{
console.log("den");
}
});
}
Run Code Online (Sandbox Code Playgroud)
如果要将数据作为POST数据传递,可以将其作为$http.post()调用中的第二个参数传递:
login: function(user){
var url = 'http://localhost:8181/login';
var data = {username: user.name, password: user.password};
$http.post(url, data).then(function(msg){
if(msg.loginSucceeded==="true"){
console.log("opa")
}else{
console.log("den");
}
});
};
Run Code Online (Sandbox Code Playgroud)