2015-11-10 3 views
2

Можно ли прочитать значение cookie в portal_normal.vm в Liferay 6.2?Чтение cookie в шаблоне Velocity

+0

Вы должны сосредоточиться только на один вопрос сразу. И вы должны проверить различия между краткосрочным _Query String_ и долгосрочным _Cookie_. Нет _better_, пока вы не знаете, что хотите. –

+0

Мне нужно взять id из prev web –

+0

Какой _template.vm_ вы имеете в виду? _portal_normal.vm_? И, пожалуйста, отредактируйте свой вопрос, чтобы включить эту информацию. –

ответ

1

вы также можете сделать это с помощью JavaScript в portal_normal.vm

function getCookie(cname) { 
    var name = cname + "="; 
    var ca = document.cookie.split(';'); 
    for(var i=0; i<ca.length; i++) { 
     var c = ca[i]; 
     while (c.charAt(0)==' ') c = c.substring(1); 
     if (c.indexOf(name) == 0) return c.substring(name.length,c.length); 
    } 
    return ""; 
} 

Goto javaScript cookie

5

Вы можете использовать метод доступа печенье из запроса:

#set($previousWeb = "...") 
#foreach($cookie in $request.getCookies()) 
    #if ($cookie.getName() eq "web") 
     #set($previousWeb = $cookie.getValue()) 
    #end 
#end 
+0

Можно ли запросить cookie по id? без? –

+0

Не от запроса. Существует класс-помощник 'CookieKeys', но этот шаблон недоступен в шаблоне (по крайней мере, не из коробки), и он почти то же самое. –

+0

Вы можете проверить, что у вас есть, проверив интерфейс. Вы можете узнать, какой $ request на самом деле является временная печать $ request.getClass(). GetName() –

Смежные вопросы