2016-06-12 24 views
0

我想創建一些「存儲庫」,併爲所有請求添加一個基礎url,但僅限於該存儲庫。

angular.module('user', []) 
    .service('User', function ($http) { 
     // SOMETHING LIKE THIS 
     $http.setBaseUrl('/api/v1/users'); 

     this.index = function() { 
      // CALL TO api/v1/users/ 

      return $http('/'); 
     } 

}); 

我知道有是$ httpProvider,我可能會增加在那裏的攔截器,但它會添加到所有請求,這不是我想要的。

我該怎麼辦?

+0

真的沒有解釋你的問題以及 – charlietfl

+0

推薦閱讀[問] – charlietfl

+0

我想做一些類似$ resource的事情,在那裏你定義一個實例上的baseUrl,並且來自該實例的所有請求都會定義baseUrl,所以我不必將baseUrl添加到所有查詢中。 – Luddinus

回答

1

您可以創建一個constant.js服務文件,它包含您擁有的各種基本URL字符串,並且只要您需要進行$ http調用,就可以調用該特定的基本url。

喜歡的東西...

$http.post(constants.usersURL + "/", data, function(res) { 
    ... //returned val 
}); 

的constants.js文件應該是這樣的:

angular.module('yourApp') 
    .factory('constants', function() { 

    var shared = { 
     baseURL: "/api/v1/", 
     usersURL: "/api/v1/users" 
    } 

    return shared; 

    });