以下Martin的建議是我寫的代碼。它沒有完全測試,
// This is a wrapper to cause the $.ajax api to act like the $http api (mostly)
function fake$http() {
'use strict';
var $http = function (settings) {
return $.ajax(settings)
.then(function (data, status, jqxhr) {
return {
data: data,
status: jqxhr.status,
config: settings,
statusText: jqxhr.statusText
};
}, function (jqxhr) {
return {
data: jqxhr.responseText,
status: jqxhr.status,
config: settings,
statusText: jqxhr.statusText
};
});
};
$http.get = function (url, config) {
return $http($.extend({ url: url, method: 'GET' }, config));
};
$http.post = function (url, data, config) {
return $http($.extend({ url: url, method: 'POST', data: data }, config));
};
$http.put = function (url, data, config) {
return $http($.extend({ url: url, method: 'PUT', data: data }, config));
};
$http.delete = function (url, config) {
return $http($.extend({ url: url, method: 'DELETE' }, config));
};
return $http;
}
response.header丟失。許多其他差異,如cors,jsonp等,等等。
嗨,約翰,你目前正在爲$ http加載整個角度。我建議你要麼選擇完全使用angular或jquery。混合兩者並不是那麼好,http服務是爲角度而構建的,並且不會在其他地方使用,它喜歡$ digest循環和許多其他部分。 –