【问题标题】:WSO2 API Manager Custom RoutingWSO2 API Manager 自定义路由
【发布时间】:2015-07-14 16:16:50
【问题描述】:

有没有办法将 WSO2 API 管理器中的端点动态设置为配置的生产和沙盒 URL 以外的东西?就我而言,我想根据传入的标头值进行路由;导致类似:

https://my_dynamically_determined_subdomain.my_static_domain.com

我尝试使用自定义处理程序类执行此操作,该处理程序将我想要的 URL 写入“To”标头,但这似乎不会影响路由。

还有其他方法可以做到这一点吗?

【问题讨论】:

    标签: wso2 wso2-am


    【解决方案1】:

    您的方法似乎不错。您可以动态设置“To”标题。但是你必须使用Default Endpoint,而不是HTTP Endpoint。 Default Endpoint 会将消息发送到“To”标头中的 URL。请修改 API 配置的 inSequence(位于 $AM_HOME/repository/deployment/server/synapse-configs/default/api/your-api.xml)以将 HTTP 端点替换为默认端点,如下所示。

    如果您想对所有 API 执行此操作,则可以编辑 velocity_templates.xml,以便所有 API 都将使用默认端点自动发布。请参阅this doc 了解更多详情。值得看看这个blog post,它正在讨论你正在尝试做的类似模式。

    【讨论】:

    • 按照您提供的博客示例,我将我的 HTTP 端点创建为简单的https://{uri.var.host},并实现了一个自定义中介以根据传入的标头设置"uri.var.host"
    猜你喜欢
    • 1970-01-01
    • 2022-10-19
    • 1970-01-01
    • 1970-01-01
    • 2020-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多