WSO2 — cookie при втором вызове сервисного прокси-сервера

#cookies #service #proxy #wso2 #esb

#файлы cookie #Обслуживание #прокси #wso2 #esb

Вопрос:

Мне нужно создать прокси-службу в wso2 esb, которая перенаправляла бы запросы на внешнюю службу wsdl с предварительной отправкой запроса авторизации для отдельной операции. Я создаю последовательность, подобную этой:

 clone
   payloadFactory (auth xml request)
   call (auth operation)
   property (value=get-property('transport', 'Set-Cookie'), name=ExtCookie scope=operation)
property (value=get-property('operation', 'ExtCookie') name=Cookie)
Send (target operation)
  

Когда я делаю первый вызов этой прокси-службы — все работает нормально. Но при втором вызове я вижу в tcpdump, что в запросе на клонирование есть HTTP-заголовок Cookie.

Я пытаюсь добавить «удаление свойства» с другой областью действия (транспорт, операция, синапс, по умолчанию, axis2, axis2-client), но никто не работает. Cookie-заголовок не был удален. Мне нужно удалить его для корректной работы с внешней службой.

Ответ №1:

Попробуйте использовать следующие свойства.

<property name="EXCESS_TRANSPORT_HEADERS" scope="axis2" action="remove"/>
<property name="Set-Cookie" scope="transport" action="remove"/>

Комментарии:

1. Я думаю, что в «конечной точке» кэшируется заголовок cookie, и он добавляется к запросу при отправке в «endpont»