我想通过angularjs
制作简单的String webApi get请求我不知道是什么问题
有没有更好的方法从webApi获取简单的字符串?
这个错误
angular.min.js:2TypeError: currentYear.thisYear(...).success is not a function
web api
// GET: api/values
[HttpGet]
public string Get()
{
string time = DateTime.Now.Year.ToString();
return time;
}
服务:
(function () {
'use strict';
var timeService = angular.module('timeService', ['ngResource']);
timeService.factory('currentYear', ['$http', function ($http) {
return {
thisYear: function () {
return $http.get('/api/year/');
}
};
}]);
})();
控制器
(function () {
'use strict';
angular.module('saniehha').controller('currentYearController', currentYearController);
currentYearController.$inject = ['$scope','currentYear'];
function currentYearController($scope, currentYear) {
var value = currentYear.thisYear().success(function (data) {
alert(data);
});
$scope.currentYear = value;
}
})();
答案 0 :(得分:1)
从Angular 1.6开始,.success
和.error
回调函数将从API中删除。 They were deprecated至少1.4。
您应该使用.then
代替.success
,因为$http
方法会返回promise
个对象:
var value= currentYear.thisYear().then(function (data) {
$scope.currentYear = data.data;
});
你可以用它来进一步链接它。
$http's deprecated custom callback methods - success() and error() Changelog