0
我是angularJS中的新成員,並且嘗試創建服務來處理HTTP請求。在angularJS中提供服務的困難
因此,這裏是我的服務:
var app = angular.module("myApp", ['base64']);
/* Main controller
================================================== */
app.controller("MainCtrl", ["$scope", "HTTPrequest",
function($scope, HTTPrequest) {
$scope.data = HTTPrequest.getAllVideos();
}
]);
/* Service which handles HTTP requests
================================================== */
app.service("HTTPrequest", [ "$http", "$base64",
function($http, $base64) {
//Getter pour la variable videos
this.getAllVideos = function($http, $base64) {
// Authentification for HTTP request on RESTHeart server
$http.defaults.headers.common["Authorization"] = 'Basic ' + $base64.encode("LOGIN" + ":" + "PASSWORD");
$http({
method: 'GET',
url: 'http://localhost/db/videos',
}).then(
function successCallback(response) {
var videos = response.data;
return videos;
},
function errorCallback(response) {
}
);
};
}
]);
而在我的Chrome瀏覽器的控制檯我有這樣的錯誤,指的是身份認證線:
TypeError: Cannot read property 'defaults' of undefined
我成功做不服務我的要求,但不可能用服務重現:(
感謝您的幫助
謝謝,它解決了這個問題。我再也沒有這個錯誤了。我沒有我的結果,但它可能來自其他地方! – ImbaBalboa
非常感謝您的編輯,它的工作原理!我仍然很難理解angularJS哲學......(Merci puisquefrançais;)) – ImbaBalboa