Как вы знаете, по умолчанию WSO2 добавляет параметр «ActivityID» к каждому заголовку ответа, который будет передаваться из API-Manager. Ссылка: https://docs.wso2.com/display/EMM210/Getting+Operation+Details+by+the+Activity+ID
По какой-то причине мне нужно удалить этот параметр из ответа для клиента. Когда я искал, я обнаружил следующую ссылку
Поэтому я добавил следующий код в Main.XML и Fault.XML, однако он не работает.
<property name = "activityid" scope = "transport" action = "remove"/>
Я также добавляю следующее свойство к потоку данных конкретного API через Integrator Studio. Однако это не работает
<resource methods = "POST" uri-template = "/attachment">
<inSequence>
<call>
<endpoint key = "attachment"/>
</call>
<send/>
</inSequence>
<outSequence>
<property action = "remove" name = "TRANSPORT_HEADERS" scope = "default"/>
<property action = "remove" name = "activityid" scope = "default"/>
</outSequence>
<faultSequence/>
</resource>
Кто-нибудь может дать мне несколько советов по этому вопросу??
Вы можете использовать посредничество сообщений для API Manager. Добавьте указанный выше посредник свойств в путь ответа 1 API.
В конфигурациях API во время выполнения есть раздел передачи сообщений как для путей запросов, так и для путей ответов. Здесь вы можете загрузить последовательность медиации, которая будет выполняться как в потоке запросов, так и в потоке ответов. Вы можете сохранить необходимое посредничество в XML-файле и загрузить файл для потока ответов.
1 - https://apim.docs.wso2.com/en/4.0.0/deploy-and-publish/deploy-on-gateway/api-gateway/message-mediation/change-the-default -посредник-поток-API-запросов/