$http GET URL 更改并查找错误的资源
$http GET URL changes and looks for wrong resource
我正在开发单页应用程序。我正在使用 Angularjs.v1.2.28。我正在使用此代码向后端发出 HTTP GET 请求。
return {
getCategories : function(sessionid,terminalid,tableno,section){
var req = {
method: 'GET',
url: Config.url+ "/menucategories",
params : {
'sessionid' : sessionid,
'terminalid' : terminalid,
'tableno' : tableno,
'section' : section
}
};
return $http.get(req);
},
我在控制器中使用从服务返回的承诺对象。
var categoryPromise = categoryService.getCategories(sessionid,terminalid,tableno,section);
categoryPromise.then(function(payload){
var categories = payload.data;
if(categories.status.code == "1"){
if(Object.prototype.toString.call(categories) === '[object Array]') {
$scope.categories = categories;
categoryService.setCategories(categories);
$scope.pax = tableService.getPax();
$scope.tablechair = tableService.getChoseTableChair();
}
}
else{
$location.url("/login");
$scope.errorMsg = categories.status.desc;
}
},function(errorPayload){
$location.url("/login");
$scope.errorMsg = "Server error while processing the request.Please contact system administrator";
});
由于 URL 更改为浏览器应用程序 URL 并附加了一些格式错误的字符,因此总是调用 errorCallback。我给出的 URL 是
http://localhost:8080/CafexRestful/menucategories
但是,它被更改为下面的浏览器应用程序URL
http://localhost:8080/CafexMobile/[object%20Object]
我一直在Chrome和Firebug调试。我无法解决它。这可能是幕后发生的事情。相同的代码与另一个控制器和服务一起工作,我在其中获取不同的数据。如果您需要更多信息,请告诉我。谢谢。
$http.get in angularjs 需要一个 url 字符串。您应该使用 url 字符串而不是对象
使用 $http.get 函数:
return {
getCategories : function(){
return $http.get("/menucategories"); // using $http.get function.
},
使用 $http 函数。
return {
getCategories : function(sessionid,terminalid,tableno,section){
var req = {
method: 'GET',
url: Config.url+ "/menucategories",
params : {
'sessionid' : sessionid,
'terminalid' : terminalid,
'tableno' : tableno,
'section' : section
}
};
return $http(req); //using $http function only.
},
我正在开发单页应用程序。我正在使用 Angularjs.v1.2.28。我正在使用此代码向后端发出 HTTP GET 请求。
return {
getCategories : function(sessionid,terminalid,tableno,section){
var req = {
method: 'GET',
url: Config.url+ "/menucategories",
params : {
'sessionid' : sessionid,
'terminalid' : terminalid,
'tableno' : tableno,
'section' : section
}
};
return $http.get(req);
},
我在控制器中使用从服务返回的承诺对象。
var categoryPromise = categoryService.getCategories(sessionid,terminalid,tableno,section);
categoryPromise.then(function(payload){
var categories = payload.data;
if(categories.status.code == "1"){
if(Object.prototype.toString.call(categories) === '[object Array]') {
$scope.categories = categories;
categoryService.setCategories(categories);
$scope.pax = tableService.getPax();
$scope.tablechair = tableService.getChoseTableChair();
}
}
else{
$location.url("/login");
$scope.errorMsg = categories.status.desc;
}
},function(errorPayload){
$location.url("/login");
$scope.errorMsg = "Server error while processing the request.Please contact system administrator";
});
由于 URL 更改为浏览器应用程序 URL 并附加了一些格式错误的字符,因此总是调用 errorCallback。我给出的 URL 是
http://localhost:8080/CafexRestful/menucategories
但是,它被更改为下面的浏览器应用程序URL
http://localhost:8080/CafexMobile/[object%20Object]
我一直在Chrome和Firebug调试。我无法解决它。这可能是幕后发生的事情。相同的代码与另一个控制器和服务一起工作,我在其中获取不同的数据。如果您需要更多信息,请告诉我。谢谢。
$http.get in angularjs 需要一个 url 字符串。您应该使用 url 字符串而不是对象
使用 $http.get 函数:
return {
getCategories : function(){
return $http.get("/menucategories"); // using $http.get function.
},
使用 $http 函数。
return {
getCategories : function(sessionid,terminalid,tableno,section){
var req = {
method: 'GET',
url: Config.url+ "/menucategories",
params : {
'sessionid' : sessionid,
'terminalid' : terminalid,
'tableno' : tableno,
'section' : section
}
};
return $http(req); //using $http function only.
},