쿼리 문자열에 서명하기
저는 C#과 asp.net을 사용하여 만든 웹 앱을 가지고 있습니다.쿼리 문자열에 플러스(+) 기호를 사용하여 파라미터 값을 입력했습니다.하지만 플러스 기호는 사라집니다.
삭제하지 않고 쿼리 문자열에 플러스 기호(+)를 포함하려면 어떻게 해야 합니까?
조언 부탁드립니다.
감사해요.
편집: UrlEncode를 사용하여 코드를 추가했습니다.
string str = Server.UrlEncode(Requery.QueryString["new"]);
+
은 쿼리 sign에 .공간을 나타낼 때 사용합니다.쿼리 문자열에서 의미적으로 중요한 다른 문자는 다음과 같습니다.&
여러 할 때 합니다.var=value
쿼리 문자열의 쌍입니다.
측쿼리 에 A는 이를 합니다.+
이치노자, 만약 당신이 리터럴을 원한다면+
시키려면 " " " 를 .%2B
★★★★★★ 。
+
쿼리 문자열의 부호는 공백으로 URL 디코딩됩니다. %2B
[URL] + [URL]을 클릭합니다.
의 차이점을 확인
http://www.google.com/search?q=foo+bar
그리고.
http://www.google.com/search?q=foo%2Bbar
위의 예에서 Google의 서버 스크립트는 쿼리 매개 변수를 URL로 디코딩한 다음 이를 사용하여 검색을 수행합니다.
뿐입니다.%
기호 뒤에 특수 문자의 16진수 코드를 입력합니다.들어 인 '16'은A
입니다.해보세요: 이이시시해시 try try try try try try try try 。
http://www.google.com/search?q=%41
이것으로 URL 인코딩이 명확해졌으면 합니다.
만약에 이 '아까운명하다.+
가 JavaScript URL을 사용하여 을 때 +
후 를 처리합니다.의 쿼리 를 URL 인코딩하여 모든 URL이 합니다.HTTP get 요구를 발행하기 전에 URL 내의 쿼리 파라미터를 URL 인코딩하여 모든 파라미터가 정상적으로 처리되도록 해야 합니다.+
부호가 로 변환되다%2B
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ URL이 URL이 .%2B
는 다시 는 ' ' ' ' 、 시 、 ' 、 됩 、 ' 、 ' ' ' ' ' 。+
네가 원하는 신호야
JavaScript의 URL 인코딩을 참조하십시오.JavaScript를 사용하여 파라미터를 URL 인코딩하는 방법에 대해 설명합니다.여기서의 논의는 간단한 답변입니다.
var encodedURL = "http://example.com/foo.php?var=" + encodeURIComponent(param);
특수문자가 손실되지 않도록 쿼리 문자열 값을 URLEncode해야 합니다.
HTML URL 인코딩 참조 보기
+ 기호를 인코딩해야 합니다. 값은 %2이어야 합니다.b
아무도 헷갈리지 않게 내가 이전 진술을 바꿨어!
서버를 사용하여 URL을 만듭니다.UrlEncode(예:
string myUrl = "http://myurl?param1=" + Server.UrlEncode("my+param+1");
솔루션에 대해 다음과 같이 신청했습니다.
순서 1: 사용Server.UrlEncode
URL 파라미터를 부호화하는 메서드. Response.Redirect("YourURL?parameter=Server.UrlEncode(parameterValue.ToString().Trim()");
스텝 2: 다른 쪽에는 플러스 기호 문자열이 표시됩니다. var parameter = Request.QueryString["parameterValue"].ToString().Trim();
결과는 다음과 같습니다.%2beH8 --> +eH8
또 다른 간단한 방법은Request.Url.ToString().Substring(Request.Url.ToString().IndexOf("=") + 1)
제 URL이http://localhost/MyApp/Activate.aspx?ActivationCode=cHbtqH9P2dDZkx/mYUgFFo7nrNqSFgqdPisAzzu5/nwlEYDOHI+CQw==
파라미터를 송신하기 전에 파라미터에 플러스 기호가 포함되어 있는지 여부를 확인해야 합니다.예를 들어, 하나의 플래그로 치환할 필요가 있는 경우는 다음과 같습니다.예를 들어 파라미터는 다음과 같습니다.klasjdlkasd+claid3 can you replace: klasjdlkasdFLAGdjid3223
그리고 당신이 개종할 때 앙게인을 교체해야 합니다.
klasjdlkasd+colid3223
이거 먹어봐, 나한테는 효과가 있어.
Request.QueryString["new"].Trim();
해결책은 항상 포함시키는 것입니다.querystring을 요청할 때 ", "+"를 바꿉니다.
string s = 요청.QueryString ["id"]Trim(). 치환("", "+");
출처 : http://www.webmasterworld.com/forum47/3238.htm
복호화 기능에서 다음 행을 추가합니다.
strText = strText.Replace(" ", "+");
언급URL : https://stackoverflow.com/questions/6855624/plus-sign-in-query-string
'programing' 카테고리의 다른 글
UITableView의 셀 하이라이트 색상을 삭제합니다. (0) | 2023.04.23 |
---|---|
ASP를 강제하는 방법이 있나요?일반 텍스트를 반환하려면 NET Web API를 선택하십시오. (0) | 2023.04.23 |
WPF 바인딩 - 빈 문자열 기본값 (0) | 2023.04.23 |
Windows 탐색기에서 PowerShell을 시작하는 방법 (0) | 2023.04.23 |
WPF 리소스에 정수 값이 있습니까? (0) | 2023.04.23 |