이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 15408|회답: 0

[ASP.NET] asp.net 매개변수의 # 문자 문제에 대해

[링크 복사]
게시됨 2016. 5. 20. 오후 10:53:13 | | | |


며칠 전, 문서의 API를 기반으로 호출 인터페이스를 작성하는 문제를 발견했습니다.

문서에는 들어오는 매개변수와 나가는 매개변수가 있으며, 전송 과정에서 토큰을 가져와야 하며, 토큰은 고정되어 있습니다.

토큰의 가치에는 #(#) 기호가 있습니다. 예를 들어 ABC#123

그리고 API 인터페이스가 있어 int 타입의 파라미터를 전달하고 GET로 요청을 해야 합니다

그 후 토큰과 ID의 매개변수를 가져왔고, 인터페이스가 int32 타입으로 변환할 수 없는 오류를 보고했습니다.

아마 그게 원인일 거예요. 그래서 브라우저를 바꿔서 시도해봤는데도 똑같은 오류가 나오네요. 도대체 무슨 일이죠????

결국 오랜 시간이 지난 후, tmd의 ID는 전송되지 않았는데, 아이디가 전달되지 않으면 int32로 변환할 수 없는 오류도 보고되기 때문입니다.

그리고 #표 뒤의 매개변수는 파싱되지 않았고, 댓글 같은 것들은 어쨌든 브라우저가 #을 이후에 보내지 않았다는 것을 이해할 수 있습니다.

결국 ID와 토큰을 바꿔 넣었는데, ID가 먼저 되고 토큰은 나중에 넣었는데 잘 됐어요!! 데이터는 요청되었고, 토큰에서 # 뒤에 있는 문자를 제거했습니다.

같은 요청이 성공했다!! 그런데 왜 문서 내 토큰이 #표지가 붙은 전체 토큰을 주는 거죠!! #号后面的字符根本就不会传给后台, 정말 짜증나요!!




이전의:c# 필터링 프록시 IP가 유효한지 검증
다음:윈도우 10 업데이트 프롬프트를 금지하고 윈도우 10 업데이트 프롬프트를 완전히 차단하세요
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com