1

我有一个 facebook 应用程序,我使用 play framework 1.2.4 作为我的服务器,我最近通过在 before 方法中添加标题来设法在 safari 和 Internet Explorer 中加载我的应用程序

response.setHeader("P3P", "CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"");

和一些 javascript 代码,在我的主要加载页面中。

    #{if session.get("user-id") == null}
    <div id="safari_cookie_hack" style="position: absolute; top: -10000px"></div>

    <script>
    if (document.cookie.indexOf('user-id') < 0) {
        window.setTimeout(function() {

            var name = 'safari_cookie_hack',
            div = document.getElementById(name),
            iframe = document.createElement('iframe'),
            form = document.createElement('form');

            iframe.name = name;
            iframe.src = 'javascript:false';
            div.appendChild(iframe);

            form.action = location.toString();
            form.method = 'POST';
            form.target = name;
            div.appendChild(form);

            form.submit();


        }, 10); 
    }
    </script>       
#{/if}

最近我想添加播放安全模块。

一切正常,但对于 safari(我的 PC 上安装了 5.1.7 版)。

第一次调用

Secure.checkAccess

工作得很好。然后最终使用该方法重定向到我的应用程序控制器

Secure.redirectToOriginalURL

在那一点上,当我看到会话具有“用户名”参数时。

但是当试图访问我的应用程序中的其他页面时。我再也没有 sessoin 并重定向到 login.html ......所有这一切都是因为安全模块

你能帮我解决这个问题吗/

4

0 回答 0