我的问题是:如何将变量(java脚本)传递给rest apllication
我的controller.js中的这个函数之一: 这个代码样本工作,但我不能使用我的var电子邮件和密码。 目前我使用url路径登录我(网址:'rest/ab/einloggen/t@rt.de/22')。但是我如何使用var email(t@rt.de)和passwort(22)。
app.controller('loginCtrl', function($scope, $location,$http){
$scope.submit = function(){
var email = $scope.username;
var password = $scope.password;
$http({
method : 'GET',
url : 'rest/ab/einloggen/t@rt.de/22'
}).success(function(data, status, headers, config) {
console.log(data);
if(data=="true"){
$location.path('/eingeloggt');
console.log("lalala");
}
}).error(function(data, status, headers, config) {
// called asynchronously if an error occurs
// or server returns response with an error status.
});
};
});
这是登录休息功能:
@Path("/einloggen/{username}/{passwort}")
@GET
public String einloggen(@PathParam("username") String Username,@PathParam("passwort") String Passwort)
{
// Bekomme die strings
Business b = new Business();
boolean test =b.einloggen(Username, Passwort);
//Return einer JSON
String ersatzBool ="false";
if(test==true){
ersatzBool="true";
}
return ersatzBool;
}
答案 0 :(得分:0)
这是我在使用Restful api与服务器(CMS应用程序 - Contentstack)进行通信时必须要做的事情,一个显着的区别是我必须使用authtoken。
$http({
url: siteUrl,
method: methode,
headers: {
access_token: auth_token,
api_key: site_api_key,
Accept: data_type, // --> 'application/json, text/plain, */*'
},
data: dataBody
}).then(function (resp) {
console.log('success ', resp);
callback(resp);
}, function(err){
console.log(err, "error");
});
答案 1 :(得分:0)
如果您想将数据传递给webapi,您可以使用 'POST'而不是'GET',在下面的示例中,我传递了json数据{id:2} 并获得响应作为产品列表,在api post方法中,id 2可用。
$http.post('http://localhost:1011/productDetails', { Id: 12 }, {
headers: {
'Content-MD5': '917200022538',
'Accept': 'application/Json',
'Content-Type': 'application/Json'
}
}).then(onUserComplete, onError);
var onUserComplete = function (response) {
$scope.Products = response.data;
};
var onError = function (reason) {
$scope.error = "Error while fetching records.";
};