2011-05-11 3 views
0

쿼리 문자열을 통해 다음 페이지로 일부 값을 전달해야하는 요구 사항이 있습니다. 이 쿼리 문자열은 타사에서 제공되는 것으로서 일부 분석을 위해 다른 페이지에서 가져와야합니다.쿼리 문자열을 암호화하는 asp.net을 중지하는 방법

난 그냥 response.redirect하고 내가받은 쿼리 문자열을 다른 페이지에 추가하십시오. 내 문제는 그 .net 환경을 인코딩/일부 특수 문자를 사용하여 그들에 의해 사용되는 암호화되지 않은 새로운 페이지에서 올바른 값을 다시 가져 오지 않습니다.

예 : 통과 URL

:이

그것은처럼 보이는
abcd.efgh=testing|value1%3drtedf+value2+2010-04-07+7pm|value3%3daaaa 

로 변경됩니다

abcd.efgh=testing|value1=rtedf%20value2%202010-04-07%207pm|value3=aaaa 

가 "="가이 "% 3 차원"및 "% 20"는 공간이된다 "+"

url의 인코딩을 중단하고 원래 형식으로 전달하려면 어떻게해야합니까?

+0

그들은 URL이 동일한 것을 할 것이라는 점에서 동일합니다 ... 나는. URL로 전달하려는 것은 비합리적인 URL이므로 사용자가 보는 양식으로 변환됩니다. – soandos

답변

3

귀하의 질의 문자열은 URL encoded입니다. 이는 URL을 형식화해야하기 때문에 표준 동작입니다. 수신 페이지에서 수행해야 할 작업은 UrlDecode을 사용하여 원래 문자열로 돌아가는 것입니다.

+0

내 주요 문제는 내 모든 응용 프로그램이 querystrings을 사용하지 않았지만 우리의 인터넷 트래픽을 분석하고있는 새로운 제 3자가 내 .net 응용 프로그램으로 전송되는 일부 쿼리 문자열을 전달하고 있지만 우리 코드에 javascript를 넣어달라고 요청했습니다. URL querystrings을 파싱하여 원하는 값을 얻습니다. 이제는이 인코딩을 처리해야하는 자바 스크립트가 아닙니다. 나는 내가 그걸 끝까지 할 수 있다고 생각하지 않는다. 내가 올바른 방향으로 생각하고 있는지 확인하고 싶습니다. – Abbi

+0

예, URL을 보낸 후에는 URL을 디코딩해야합니다. decodeURIComponent (http://www.w3schools.com/jsref/jsref_decodeURIComponent.asp)를 사용하여 Javascript에서 디코딩 할 수 있습니다. – keyboardP

1

이것은 암호화라고하지 않으며 URL 인코딩이며 HTTP 요구 사항입니다.

ASP.NET을 중지 할 수 없으며 실제로 중지하지 마십시오!

관련 문제