2014-09-19 16 views
5

का उपयोग करके हेडर के माध्यम से ऑथोकोकन को कैसे पास किया जाए, मैं हेडर के माध्यम से अपना एपीआई ऑथोकोकन पास करने की कोशिश कर रहा हूं। मैं कोणीय जेएस के लिए नया हूँ इसलिए मैं ऐसा करने में सक्षम नहीं हूं। मेरा कोड:कोणीय जेएस

$scope.init=function(authtoken,cityname){ 
     $scope.authtoken=authtoken;      
     $scope.cityname=cityname;    
     $http({method: 'GET', url: '/api/v1/asas?city='+$scope.cityname+'&auth='+$scope.authtoken}).success(function(data) {     

अभी मैं एपीआई यूआरएल में लिखा गया हूं। लेकिन मैं हेडर के माध्यम से टोकन पास करना चाहता हूं।

उत्तर

5

आमतौर पर आप हेडर में प्रमाणीकरण टोकन पारित फेंक पारित कर सकते हैं। यहाँ कैसे मैं अपने क्षुधा

angular.module('app', []).run(function($http) { 
     $http.defaults.headers.common.Authorization = token; 
    }); 

यह डिफ़ॉल्ट रूप से हेडर को प्रमाणीकरण टोकन जोड़ देगा ताकि आप अभ्यस्त शामिल करने के लिए किया जाता है हर बार जब आप एक अनुरोध करना है में से एक के लिए यह किया है। आप हर कॉल में शामिल करना चाहते हैं तो यह इस

$http({ 
    method: 'GET', 
    url: '/api/v1/asas?city='+$scope.cityname', 
    header:{ 
     'Authorization': $scope.authtoken 
    } 
}).success(function(data) { 
    //success. 
}).error(function(error){ 
    //failed. 
}); 
+0

समय में अब मैं init समारोह में मेरी authtoken मिल कैसे मैं अपने authtoken पारित समय में authtoken फोन करने की कोशिश की तरह कुछ हो जाएगा, लेकिन यह काम नहीं जैसे रन (फ़ंक्शन ($ http, authtoken) –

+0

मुझे नहीं लगता कि आप फ़ंक्शन चलाने के लिए अधिकृत हो सकते हैं। –

4

आप आवेदन रन

youapp.run(function($http) { 
    $http.defaults.headers.common.Authorization = 'Basic YmVlcDpib29w' 
}); 

पर कॉन्फ़िगर या यह प्रत्येक अनुरोध

$http({ 
    url:'url', 
    headers:{ 
     Authorization : 'Basic YmVlcDpib29w' 
    } 
}) 

Angular $Http reference