MVC Web API 2 요청 매개변수에서 점 문자 처리
MVC Web API 2에서는 다음과 같은 요청 매개변수로 작업하는 것이 편리합니다. 일관된 형식을 준수합니다. 그러나 마침표(.)와 같은 특수 문자가 포함된 요청을 처리해야 하는 경우도 있습니다. 이 문서에서는 요청 매개변수에 점 문자를 포함하는 문제를 살펴보고 실용적인 솔루션을 제공합니다.
기본 문제
사용자는 다음 형식의 요청을 허용하려고 했습니다.
http://somedomain.com/api/people/staff.33311
그런데 이 방법을 시도하니 404에러가 발생했습니다. 이는 Web API의 기본 라우팅이 URL 경로의 세그먼트를 컨트롤러 및 작업 이름으로 인식하고 그 뒤에 선택적 매개 변수를 사용하도록 설계되었기 때문에 발생했습니다. 요청 URL의 점 문자는 작업 이름 또는 쿼리 매개변수의 일부로 구문 분석되므로 모호성을 유발합니다.
제안된 솔루션
이 문제를 해결하려면 문제가 발생하면 사용자는 문제의 요청 매개변수가 URL 경로 세그먼트의 일부가 아니므로 컨트롤러나 작업 이름으로 착각할 수 없음을 확인할 수 있습니다. 이를 달성하는 한 가지 방법은 다음과 같이 URL에 후행 슬래시를 추가하는 것입니다.
http://somedomain.com/api/people/staff.33311/
후행 슬래시는 매개변수가 URL 경로의 일부가 아닌 쿼리 문자열로 처리되도록 합니다. 이를 통해 Web API는 요청을 올바르게 구문 분석하고 이를 의도한 작업에 매핑할 수 있습니다.
구현 고려 사항
서버 구성에 따라 웹을 조정해야 할 수도 있습니다. .config를 사용하면 URL 경로에 점을 사용할 수 있습니다. 이는 아래와 같이 httpRuntime 요소의 "allowDotsInPath" 속성을 true로 설정하여 달성할 수 있습니다.
<system.webServer> <httpRuntime allowDotsInPath="true" /> </system.webServer>
이 솔루션을 구현하면 사용자는 유지 관리를 유지하면서 매개변수에 점 문자가 포함된 요청을 처리할 수 있습니다. 일관되고 명확한 요청 형식입니다.
위 내용은 MVC 웹 API 2 요청 매개변수에서 도트 문자(.)를 처리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!