1

ユーザーがその背後にあるロジックを表示できないように、FTL で変換したい JS コードがあります。これは可能ですか?

ロジックに <#if> と <#assign> を使用することを考えていますが、開始方法がわかりません。他のリソースを見つけて、Freemarker のドキュメントが苦痛であるように見えます。

    <script type="text/javascript">
    var ref = document.referrer,
        currentPageURL = document.URL,
        expectedURL = "http://127.0.0.1";

    function getUrlVars(href)
    {
        var vars = [], hash;
        var hashes = href.slice(href.indexOf('?') + 1).split('&');
        for(var i = 0; i < hashes.length; i++)
        {
            hash = hashes[i].split('=');
            vars.push(hash[0]);
            vars[hash[0]] = hash[1];
        }
        return vars;
    }

    var googleURL = ref.match(/^https?:\/\/([^\/]+\.)?google\.com(\/|$)/i);
    if ((googleURL && (currentPageURL == expectedURL)) {
        //do stuff.
    }
    </script>
4

1 に答える 1

2

はどこにも使用されてgetUrlVarsいないようですが、リクエスト パラメータが必要な場合は で取得できます${RequestParameters['test']}。リファラーと現在の URL は使用できないため、バックエンド コードからテンプレート エンジンに送信する必要があります。その場合、その状態は単純<#if $referrerFromJava?matches("^https?:\/\/([^\/]+\.)?google\.com(\/|$)">です。しかし、これらすべてをサーバーへのチェックに移動する場合は、バックエンド コードで実行し、変数を ftl に送信します。${isFromGoogle}

于 2013-04-12T09:06:29.553 に答える