내가 웹 API를 컨트롤러와 두 GET 방법이 발견되었다 :ASP.NET WebAPI 여러 작업은
public class ImagesController : ApiController {
[HttpGet]
public HttpResponseMessage GetImages() { }
[HttpGet]
public HttpResponseMessage Download([FromUri]int[] ids) { }
}
왜 내가 갖는 여러 작업 발견 오류를,/API/이미지를, 왜 모두에 도달 할 때 행동은 똑같은가?
그러나 GetImages() 및 다음과 같은 경우 웹 서버가 혼동하지 않습니다. GetImagesById (int id) {} – user3450929
GetImages()는 전체 이미지 목록을 반환합니다. 그리고'GetImageById'는 주어진 id에 대한 Image 인스턴스를 반환 할 것입니다. 기본적으로 '/ api/Images /'(GetImages)와'/ api/Images/10' (GetImagesById)의 두 가지 요청이 있습니다. – TheLittleHawk
또한 쿼리 문자열 (/ api/Images? id = 10)을 사용하여 요청을 처리하는 경우 웹 서버는 처리 방법을 알고 있지만 다운로드 동작을 처리하는 방법을 모르는 이유는 무엇입니까? 예를 들어 다운로드 작업 만 남겨두면 왜 두 가지 요청을 보낼 수 있습니까?/api/Images는 아무 것도 반환하지 않지만 디버깅 할 때 동작합니다./api/Images? ids = 1 & ids = 2는 해당 ID가있는 이미지를 반환합니다. 내 질문에, 다운로드 (int [] ids)와 GetImages()가 함께 웹 서버를 혼동하지만 GetImages() 및 GetImagesById (int id)가 아닌 이유는 무엇입니까. – user3450929