2014-10-28 13 views
0

我有一個創建名爲'web_api'的會話cookie的API。然後,我想在我的Angular應用程序中訪問該cookie,以便我可以將其傳遞迴API以進行授權。但是,使用$cookies.web_api$cookieStore.get('web_api')產生undefined將通過API創建的cookie傳遞回來自Angular應用程序的API

是否有可能以某種方式將此Cookie從Angular應用程序傳回給我的API?

我的服務代碼如下:

app.service('apiService', function($http, $q, $cookies, $cookieStore) { 
    var host = 'https://127.0.0.1:12344/v1/' 

    function test_cookie() { 
     console.log($cookies.web_api); 
     console.log($cookieStore.get('web_api')); 
    } 
}); 
+3

爲了安全起見,一個cookie的範圍,設置它的域。 – wvdz 2014-10-28 07:42:39

+0

@popovitsj所以我沒有辦法將cookie傳遞迴API? – 2014-10-28 07:59:02

+0

如果您的網絡應用程序與您的API在相同的域上運行,您可以。 – wvdz 2014-10-28 08:18:39

回答

1

我的所述API端點設定爲'Access-Control-Allow-Credentials' = true,當我提出的請求我的請求,例如設置withCredentials: true

function getUserId() { 
    var idPath = 'userId' 

    var request = $http({ 
     method: 'get', 
     url: buildUrl(idPath), 
     withCredentials: true 
    }); 

    return(request.then(handleSuccess, handleError)); 
} 

這解決了這個問題。

這個答案是基於這裏提供的文件:http://www.html5rocks.com/en/tutorials/cors/

相關問題