2015-01-12 7 views
0

mod_jk에 apache tomcat을 사용하고 shindig를 실행하고 있습니다. 난에 .CSV = & 랜덤Mod_JK URL 디코딩 문제가있는 Apache Tomcat

http://download.finance.yahoo.com/d/quotes.csv?s= GSPTSE^+^SPCDNX MIC.TO + + + ABX.TO AEM.TO & & snl1d1t1c1 F = E = 5683

를 아래의 URL을 전달하려고하고 있어요 오류 400 실패 (URL 매개 변수가 잘못되었습니다.)

매개 변수없이 URL을 전달하면 완벽하게 작동합니다.

당신은

http://portaltab.com/shindig/gadgets/ifr?url=http://igstock.googlecode.com/svn/trunk/modules/canada_stock_market_on_ig.xml

URL

이하 나는 많은 것들을 시도에 대한 CONSOL 로그에서 봐,하지만 운이 있습니다. 나는 그것이 바람둥이 이슈인지 뭔가 다른지 확실하지 않다.

전문가의 경험이 있으면 같은 문제로 정보를 공유 할 수 있습니까?

감사합니다.

감사합니다,

주권

답변

0

캐럿 (^)이 유효한 URL 문자가 없기 때문에 대부분의 경우 문제입니다. RFC1738에 따라 '안전하지 않은'것으로 간주됩니다. 그 RFC에서 인용 : 게이트웨이 및 기타 수송 에이전트가 때때로 문자를 수정하는 것으로 알려져 있기 때문에

을 ... 다른 문자는 안전하지. 이 문자는 "{", "}", "|", "\", "^", "~", "[", "]"및 "`"입니다.

%5E을 사용하여 URL의 캐럿을 인코딩해야합니다. 일부 프로그래머와 라이브러리는 일반적으로 사용되는 기호가 아니기 때문에 기본적으로이 작업을 수행하지 않으며 일부 시스템에서는 완벽하게 호환되지 않더라도 오류없이 처리합니다.

URL을 인코딩하는 경우 사용자의 예가 명확하지 않으며, 그렇다면 어디에서 그렇게하는지 명확하지 않습니다. 인코딩을 전혀하지 않으면 플러스 기호를 인코딩해야 할 수도 있습니다. 예문 당 완전히 인코딩 된 s 값은 다음과 같습니다.

%5EGSPTSE%2B%5ESPCDNX%2BMIC.TO%2BABX.TO%2BAEM.TO