0

в нашем проекте мы используем полнофункциональные внутренние службы, поэтому мы используем HTTP-адаптер с подключением connectAS="endeUser". Мы хотели бы знать программно, если файл cookie уже есть так жеIBM MobileFirst 7.1: извлечение файла cookie, когда connectAs = «endUser» используется

Есть ли какой-либо (также недокументированный) API, который позволяет нам исследовать файл cookie между адаптером и бэкэнд-сервисом (например, WL.Server.getClientRequest().getCookies() для изучения файлов cookie между клиентом и адаптер)?

Спасибо, Iacopo

ответ

0

Чтобы получить клиентский запрос, который содержит печенье, от адаптера вы будете использовать WL.Server.getClientRequest() и что даст вам доступ к HttpServletRequest объекта. Таким образом, у вас есть доступ ко всем его методам, в том числе к getCookies() для получения дополнительной информации. http://docs.oracle.com/javaee/7/api/javax/servlet/http/HttpServletRequest.html

Если вы хотите получить значение определенного файла cookie, тогда вам нужно перебрать массив файлов cookie. Например.

function testProcedure() { 

    var cookies = WL.Server.getClientRequest().getCookies(); 

    cookies.forEach(function(cookie){ 
     var name = cookie.getName(), 
      value = cookie.getValue(); 

     if(name == 'myCookie') { 
      // read/update cookie info 
     } 

     // Cookie Object 
     // http://docs.oracle.com/javaee/7/api/javax/servlet/http/Cookie.html 
    }); 

    return { 
     cookies: cookies.length 
    }; 
} 
Смежные вопросы