【问题标题】:WSO2 API Manager 3.2.0 - Cannot remove "Server" headerWSO2 API Manager 3.2.0 - 无法删除“服务器”标头
【发布时间】:2021-08-07 19:50:24
【问题描述】:

根据官方docs 定义自定义输出序列并添加<property name="CustomTransportHeader" scope="transport" action="remove"/> 将从 api 响应中删除任何不需要的标头,但我没有成功定义自定义全局输出序列并尝试删除 Server 没有响应标头,也没有任何其他标头。

 * Mark bundle as not supporting multiuse
 < HTTP/1.1 200 
 < X-Content-Type-Options: nosniff
 < X-XSS-Protection: 1; mode=block
 < Date: Tue, 18 May 2021 14:37:47 GMT
 < Content-Type: application/json
 < Transfer-Encoding: chunked
 < Server: WSO2 Carbon Server

这是我作为新的 xml 文件放在{$APIM_HOME}/repository/deployment/server/synapse_configs/sequences 文件夹中的自定义输出序列,并通过日志确认了它的部署:

 <sequence xmlns="http://ws.apache.org/ns/synapse" name="WSO2AM--Ext--Out"> 
  <property name="Server" scope="transport" action="remove"/>
 <log level="custom">
   <property name="TRACE" value="API Mediation Extension"/>
 </log>
 </sequence>

应该如何完成这项工作?这里有什么问题?

【问题讨论】:

  • 您是否将序列与 API 相关联? apim.docs.wso2.com/en/latest/deploy-and-publish/…
  • @VithursaM 希望它对 api 管理器中的所有 API 有效,而不仅仅是我创建的 API,例如,我想更改检索 API 列表的 /apis api 上的响应标头,这种情况我该怎么办?

标签: wso2 wso2esb wso2-am synapse


【解决方案1】:

对于任何为此苦苦挣扎的人,您所要做的就是将此条目添加到您的 deployment.toml 文件中:

[transport.https.properties]
server = "something"

这会将响应标头中的Server 更改为您想要的值。使用自定义序列没有好处,因为您不想修改自己定义的 API,而且您的请求根本不会通过它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-05
    • 1970-01-01
    • 2022-01-10
    相关资源
    最近更新 更多