我正在尝试使用angular $ http服务来发送一个对象,但是当我检查网络选项卡的请求时,没有数据属性(虽然有请求),这意味着,数据从未提交过。
我已经制作了数十个基于API模型的应用程序,并且从未遇到过发送$ http请求的任何问题。
最好的问候
这是我的代码:
$scope.getMultipleTimesService = function () {
var defer = $q.defer();
$http({
method: 'GET',
data: {'times': ["1", "2"]},
dataType: 'json',
url: 'http://api.domain.com/times'
}).then(function successCallback(response) {
defer.resolve(response);
}, function errorCallback(response) {
});
return defer.promise;
};
答案 0 :(得分:1)
您无法使用GET
HTTP方法发送请求正文。如果您需要正文,请使用POST
。
但是,如果要传递查询参数,则应使用params
选项传递查询字符串的数据。
$scope.getMultipleTimesService = function () {
var defer = $q.defer();
$http({
method: 'GET',
params: {'times': ["1", "2"]},
url: 'http://api.domain.com/times'
}).then(function successCallback(response) {
defer.resolve(response);
}, function errorCallback(response) {
});
return defer.promise;
};
答案 1 :(得分:0)
使用此风格:
$scope.getMultipleTimesService = function(){
var deferred = $q.defer();
$http.post('http://ursampleurl.com',{'time': ['t1','t2']} )
.success(function (data, status, headers, config) {
deferred.resolve(data);
return deferred.promise;
})
.error(function (data, status, headers, config) {
console.log('some error')
})
return deferred.promise;
}