keycloak-uncached

Details

diff --git a/integration/js/src/main/resources/keycloak.js b/integration/js/src/main/resources/keycloak.js
index d57c48d..445bca3 100755
--- a/integration/js/src/main/resources/keycloak.js
+++ b/integration/js/src/main/resources/keycloak.js
@@ -619,7 +619,7 @@
                 if (event.origin !== loginIframe.iframeOrigin) {
                     return;
                 }
-                var data = event.data;
+                var data = JSON.parse(event.data);
                 var promise = loginIframe.callbackMap[data.callbackId];
                 delete loginIframe.callbackMap[data.callbackId];
 
@@ -652,7 +652,7 @@
                 msg.callbackId = createCallbackId();
                 loginIframe.callbackMap[msg.callbackId] = promise;
                 var origin = loginIframe.iframeOrigin;
-                loginIframe.iframe.contentWindow.postMessage(msg, origin);
+                loginIframe.iframe.contentWindow.postMessage(JSON.stringify(msg), origin);
             } else {
                 promise.setSuccess();
             }
diff --git a/integration/js/src/main/resources/login-status-iframe.html b/integration/js/src/main/resources/login-status-iframe.html
index a8c6409..8261065 100755
--- a/integration/js/src/main/resources/login-status-iframe.html
+++ b/integration/js/src/main/resources/login-status-iframe.html
@@ -17,14 +17,15 @@
             return;
 
         }
-        event.data.loggedIn = false;
+        var data = JSON.parse(event.data);
+        data.loggedIn = false;
         var cookie = getCookie('KEYCLOAK_SESSION');
         if (cookie) {
-            event.data.loggedIn = true;
-            event.data.session = cookie;
+            data.loggedIn = true;
+            data.session = cookie;
         }
 
-        event.source.postMessage(event.data,
+        event.source.postMessage(JSON.stringify(data),
                 event.origin);
     }
     window.addEventListener("message", receiveMessage, false);