Apache Tomcat 有 Mod_JK URL 解码问题
Apache Tomcat with Mod_JK URL decoding issue
我正在使用带有 mod_jk 和 运行 shindig 的 apache tomcat。我正在尝试将下面的 url 传递给它
http://download.finance.yahoo.com/d/quotes.csv?s=^GSPTSE+^SPCDNX+MIC.TO+ABX.TO+AEM.TO&f=snl1d1t1c1&e=.csv&random=5683
它没有给出错误 400(无效的 url 参数)
如果我在没有任何参数的情况下传递 url,它工作得很好。
您可以查看下面的控制台日志 url
我尝试了很多东西,但没有运气。我不确定这是 tomcat 问题还是其他问题。
如果有专家遇到同样的问题,请分享一些信息。
谢谢。
此致,
拉吉
您的问题很可能是因为插入符号 (^) 不是有效的 URL 字符。他们被认为是 "unsafe" 每 RFC1738。引用该 RFC:
...Other characters are unsafe because gateways and other transport
agents are known to sometimes modify such characters. These
characters are "{", "}", "|", "\", "^", "~", "[", "]", and "`".
您应该使用 %5E
对 URL 中的插入符进行编码。一些程序员和库默认情况下不这样做,因为它不是常用的符号,一些系统即使不完全兼容也可以毫无错误地处理它。
如果您正在对 URL 进行编码,从您的示例中并不清楚,如果是,您在何处进行编码。如果根本不编码,您可能还需要对加号进行编码。根据您的示例,完全编码的 s
值将是:
%5EGSPTSE%2B%5ESPCDNX%2BMIC.TO%2BABX.TO%2BAEM.TO
我正在使用带有 mod_jk 和 运行 shindig 的 apache tomcat。我正在尝试将下面的 url 传递给它
http://download.finance.yahoo.com/d/quotes.csv?s=^GSPTSE+^SPCDNX+MIC.TO+ABX.TO+AEM.TO&f=snl1d1t1c1&e=.csv&random=5683
它没有给出错误 400(无效的 url 参数)
如果我在没有任何参数的情况下传递 url,它工作得很好。
您可以查看下面的控制台日志 url
我尝试了很多东西,但没有运气。我不确定这是 tomcat 问题还是其他问题。
如果有专家遇到同样的问题,请分享一些信息。
谢谢。
此致, 拉吉
您的问题很可能是因为插入符号 (^) 不是有效的 URL 字符。他们被认为是 "unsafe" 每 RFC1738。引用该 RFC:
...Other characters are unsafe because gateways and other transport agents are known to sometimes modify such characters. These characters are "{", "}", "|", "\", "^", "~", "[", "]", and "`".
您应该使用 %5E
对 URL 中的插入符进行编码。一些程序员和库默认情况下不这样做,因为它不是常用的符号,一些系统即使不完全兼容也可以毫无错误地处理它。
如果您正在对 URL 进行编码,从您的示例中并不清楚,如果是,您在何处进行编码。如果根本不编码,您可能还需要对加号进行编码。根据您的示例,完全编码的 s
值将是:
%5EGSPTSE%2B%5ESPCDNX%2BMIC.TO%2BABX.TO%2BAEM.TO