Accéder aux cookies d'un iFrame dans la fenêtre parent

Je suis du chargement d'une iFrame d'un domaine différent. À la fois le parent et l'iFrame sites sont sous mon contrôle. Je suis à l'aide d'une iFrame.postMessage de poster des messages de l'iFrame. Le site dont je suis le chargement par le biais de l'iFrame a un cookie(pas uniquement http cookie). J'ai besoin de lire ce cookie à l'intérieur du site parent.

   var opIFrame=document.getElementById('opIFrame').contentWindow;

    /**
 * periodically invoking the Endpoint at OP for every six seconds
 */
setInterval(function(){
    console.log('Sending polling Request From RP Client ... ' + clientId);
    document.all.opIFrame.src = endPoint;
    opIFrame.postMessage(clientId,"https://localhost:9443/oauth2/loginstatus");
    var session=getCookieValue("session_state");
    console.log('**session**'+session);
},6000);


function getCookieValue(cookieName) {
var name = cookieName + "=";
var cookies =document.cookie.split(';');
if (!cookies) {
    return null;
}
for (var i = 0; i < cookies.length; i++) {
    var cookie = cookies[i].trim();
    if (cookie.indexOf(name) == 0) {
        return cookie.substring(name.length, cookie.length);
    }
}
return null;

}

J'ai utilisé les méthodes ci-dessus pour lire le cookie. Mais il n'a pas réussi. Merci de me conseiller sur ce.

Code Mis À Jour:

<iframe id="opIFrame" style='visibility: hidden;' src=endpoint onload="getCookieValue('session_state')" >
</iframe> 
   <script>function getCookieValue(cookieName) {
        console.log("=====getCookieValue=======");
        var cookies = document.cookie;
        console.log("=====ALL cookies======="+cookies);
    }</script>

Je suis de tableau vide pour les cookies, même si je vois les cookies dans mon navigateur.

Comment écoutez-vous à l'événement de message sur la fenêtre parent?
Oui Manik. J'ai déjà ajouté une eventListner et d'écouter la réponse. Mais le problème est de l'accès au cookie. Je reçois la réponse de l'iFrame sur le message de l'événement par le biais de l'auditeur. Si j'ai un cookie nommé "session_state" je suis nulle lors de l'exécution de la getCookieValue(cookieName).
Merci de voir mon jour de réponse et pouvez-vous expliquer ce que vous envoyez dans clientId ? Aussi je vois que tu postes le message de la fenêtre parent avant de le lire, de le cookie est-ce intentionnel?
Vous le faites mal, vous essayez de lire les témoins de l'iframe dans la fenêtre parent qui n'est pas accessible, c'est un navigateur de mesure de sécurité. Seul le domaine qui a créé le cookie est susceptible de lire son cookie. Donc, vous devez lire le cookie de l'intérieur de l'iframe et puis la passer à la fenêtre parent. Si vous n'avez pas accès ou contrôle sur la page dans l'iframe alors il n'y a aucun moyen d'obtenir la valeur du cookie.
Pour ce cas, je n'ai qu'une solution pour vous - "Il n'Est Pas Possible".

OriginalL'auteur Hasanthi | 2015-05-06