【问题标题】:How to make my web service url case insensitive?如何使我的网络服务 url 不区分大小写?
【发布时间】:2015-08-27 10:35:43
【问题描述】:

我已经使用 Axis2 从现有的 wsdl 文件生成了一个 Web 服务,现在我的服务可以通过一个 url 访问

http://something/Service?wsdl

问题是,有一些应用程序调用这个url,在url末尾添加一个大写单词“WSDL”(请不要问为什么..),所以他们称之为,

http://something/Service?WSDL

而且他们无法通过该网址访问它。 有可能解决这个问题吗?也许设置一些参数或以某种方式使这个 url 不区分大小写?

【问题讨论】:

    标签: web-services wsdl axis2


    【解决方案1】:

    我快速浏览了 Axis2 代码,似乎 ?wsdl 扩展比较区分大小写。 This thing sometimes happen.

    您可以自己查看代码,看看某处是否有一些开关可以使这种情况不区分大小写(以防我在查看代码时遗漏了什么)。

    你可以做的是在你的应用程序中有一个过滤器来查看查询字符串,如果它在那里找到?WSDL,无论如何,重定向到相同的URL,但使用小写@987654324 @。这当然假设尝试访问 WSDL 的客户端可以遵循重定向。

    问题是,有一些应用程序调用这个url,在url末尾添加了一个大写单词“WSDL”(请不要问为什么..)

    对不起,为什么?最简单的方法是告诉客户端使用小写参数而不是大写参数。如果他们可以用?WSDL 打电话,为什么用?wsdl 打电话这么难?

    【讨论】:

    • 客户端应用程序不能改变它们的任何行为,有一个旧的 Web 服务(用 .NET 开发),我必须用一个用 Java 开发的新服务替换它,这必须是透明的客户。在旧服务中区分大小写没有问题。无论如何,正如你所说,我使用 servlet 过滤器和重定向到具有较低“?wsdl”的相同网址。
    猜你喜欢
    • 2011-10-14
    • 2013-01-26
    • 2013-01-26
    • 2012-05-25
    • 2011-02-18
    • 1970-01-01
    • 2011-04-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多