2017-09-12 8 views
0

하나의 나머지 API가 있습니다 : /myApp/fetchData/User-Name/Password. 사용자 이름과 암호가 요청에 따라 변경됩니다.

나는이

/myApp/fetchData/srikanth/Abcdef#g123 

같은 위의 restapi 요청이 같은 것입니다 호출 할 때 :

/myApp/fetchData/srikanth/Abcdef 

는 기본적으로 URL 텍스트에 # 문자에서 제거되었다. 해결할 방법이 있습니까?

감사합니다. Srikanth.

답변

0

URI에서 #"fragment"의 시작을 트리거하고 경로를 끝냅니다. 프래그먼트는 대개 경로로 식별되는 자원의 일부를 지정합니다.

클라이언트로부터 요청을 게시 할 때는 escape special characters이어야합니다. 요청은 다음과 같아야합니다

/myApp/fetchData/srikanth/Abcdef%23g123 

은 JS의 encodeURI 또는 encodeURIComponent 기능처럼, 탈출 URL에 다른 방법이 있습니다. 예를 들어 다음과 같이 할 수 있습니다.

var request = "/myApp/fetchData/srikanth/" + encodeURIComponent("Abcdef#g123"); 

그런 다음 서버가 원래 요청으로 디코딩해야합니다.

하지만 그렇다면 암호를 평범하게 보내는 것이 좋은 해결책일까요?