2017-10-05 115 views
0

我需要在多個域(跨域的cookie)上設置一個cookie。 爲了做到這一點,我做了一個創建cookie的django服務器。 然後,我需要從其他域中「讀取」我稱之爲django cookie服務器的cookie。設置一個cookie(django)並獲得它的值

如果我通過img調用它,則cookie已設置好。但有了這張圖片,我無法訪問cookie。 我試着用一個javascript腳本,例如:

function httpGet(theUrl) 
{ 
    var xmlHttp = new XMLHttpRequest(); 
    xmlHttp.open("GET", theUrl, false);request 
    xmlHttp.send(null); 
    return xmlHttp.responseText; 
} 

但每次我把這種fonction時候,一個新值的cookie給定(它不把我的瀏覽器cookie的)。有沒有辦法實現我想要的?用javascript請求獲取此cookie值?

感謝,

回答

0

嘗試set_cookie()來設置cookie的

說,如果你有一個JSON響應json_obj

return_obj = HttpResponse(json_obj) 
return_obj.set_cookie("custom_cookie_name", custom_cookie_value) 
return return_obj 

要驗證的請求定製的cookie,試圖

if request.COOKIES.has_key("custom_cookie_name"): 
    print "has custom cookie" 

要獲取cookie值,請嘗試

custom_cookie = request.COOKIES.get('custom_cookie_name') 
+0

謝謝,但我知道如何用django設置cookie。但我需要從另一個域獲取它的值,並帶有javascript請求。似乎如果我通過JavaScript來執行請求,則Django服務器無法識別cookie(因此無法識別瀏覽器)。謝謝! :) –

+0

我不認爲你可以從另一個域使用JavaScript獲取cookie。這將違反跨域限制。 –

+0

是的,但應該可以讀取cookie(由django服務器)並通過get請求返回它的值? –