Заголовок авторизации используется в API Manager только для внутренней авторизации, и этот заголовок обычно удаляется из исходящего запроса (из gw APIM в бэкэнд) перед его отправкой в бэкэнд. Это происходит на уровне APIAuthenticationHandler. И пользовательский в последовательности, которую вы подключили к API, будет выполнен после APIAuthenticationHandler. Вы можете обратиться к диаграмме потока сообщений в [1] для лучшего понимания.
Теперь давайте посмотрим, как этот APIAuthenticationHandler применяется по умолчанию в файле синапса API. (Вы можете найти это в папке / repository / deployments / server / synapse-configs / api)
<handler class="org.wso2.carbon.apimgt.gateway.handlers.security.APIAuthenticationHandler">
<property name="RemoveOAuthHeadersFromOutMessage" value="true"/>
<property name="APILevelPolicy" value=""/>
<property name="APISecurity" value="oauth2"/>
</handler>
Вы можете изменить описанный выше обработчик, как показано ниже, и принудительно оставить заголовок Oauth в исходящем сообщении.
<property name="RemoveOAuthHeadersFromOutMessage" value="false"/>
После изменения синапса API вы можете увидеть в консоли журнал, как показано ниже.
INFO - APIDeployer API: admin--PizzaShackAPI:v1.0.0 has been updated from the file: /wso2am-2.6.0/repository/deployment/server/synapse-configs/default/api/admin--PizzaShackAPI_v1.0.0.xml
Теперь попробуйте вызвать API. Вы должны быть в состоянии зарегистрировать заголовок авторизации.
[1]. https://docs.wso2.com/display/AM210/Message+Flow+in+the+API+Manager+Gateway