ASP.Net MVC4에서“웹 API”란 정확히 무엇입니까? API를 여러 언어로

웹 API가 무엇인지 알고 있습니다.
API를 여러 언어로 작성했습니다 (MVC3 포함).
ASP.Net에서도 잘 연습하고 있습니다.
방금 MVC4에 “Web API”가 있음을 발견했으며 비디오 예제를 거치지 않으면 정확히 무엇인지에 대한 좋은 설명을 찾을 수 없습니다.
필자의 과거 경험에서 Microsoft 기술 (특히 ASP.Net)은 간단한 개념을 취하여 모든 것을 “보다 쉽게”만들 수있는 쓸모없는 오버 헤드로 감싸는 경향이 있습니다.
누군가 MVC4의 웹 API가 정확히 무엇인지 설명해 주시겠습니까? 왜 필요한가요? 왜 내 API를 작성할 수 없습니까?



답변

ASP.NET 웹 API는 REST 또는 RPC에 관계없이 HTTP 서비스 를 빌드하기위한 “비 선택적”프레임 워크 입니다. RFC 2616 (HTTP Spec)의 Microsoft 최고의 구현입니다.

확실히 당신은 자신의 API를 만들 수 있지만 ASP.NET 웹 API를 만들 수 있습니다

  • 레고 같은 모듈을 HTTP 파이프 라인에 추가 할 수 있는 Russian Doll 모델을 기반으로 구축
  • HTTP를 일류 시민으로 만들어 모든 공통 헤더를 강력하게 입력하고 (이름 값뿐만 아니라) 구문 분석하는 데 도움을줍니다.
  • ASP.NET (IIS) 호스팅 또는 자체 호스팅을 모두 허용
  • 콘텐츠 협상, 미디어 유형 지원 …
  • 위에서 아래로 비동기
  • HttpClient를 사용하는 클라이언트에 대해 비슷한 접근 방식을 사용합니다.

답변

Microsoft 의 새로운 웹 API 는 이름에 따라 REST에 구부러진 웹 액세스 가능한 API 작성에 대한 모든 것을 제안합니다.

Rick Strahl은 최근 블로그에 대해 블로그를 작성했으며 MVC와 웹 API의 사용시기를 잘 분석했습니다.

내장 된 콘텐츠 협상, 내장 된 여러 형식 등.


답변

요약하자면, ASP.NET 웹 API는 REST 를 .NET에서 일류 시민으로 만들고 있으며 WCF는 실제로 수용 할 수 없었습니다. 아시다시피 ASP.NET 웹 APIfor building web APIs.NET Framework의 최상위 프레임 워크입니다.

웹 개발자로서 우리가 겪었던 가장 큰 좌절 중 하나는 WCF의 끝없는 구성에 직면하는 것이 었습니다. WCF는 훌륭하지만 WCF 웹 API 프레임 워크 이후 REST를 받아들이지 않았습니다 . REST 스타터 키트라는 것이 있었지만 결국 죽었습니다.

그러나 ASP.NET Web API는 브라우저 및 모바일 장치와 같은 광범위한 클라이언트에 도달하는 HTTP 서비스를 쉽게 구축 할 수있는 차세대 프레임 워크입니다. .NET Framework에서 RESTful 애플리케이션을 빌드하기위한 이상적인 플랫폼입니다. 자세한 내용과 유용한 블로그 게시물을 보려면 ASP.NET 웹 API 블로거 페이지를 방문 하십시오.


답변

ASP.NET 웹 API는 브라우저 및 모바일 장치를 포함하여 광범위한 클라이언트에 도달하는 HTTP 서비스를 쉽게 구축 할 수있는 프레임 워크입니다.

ASP.NET Web API는 .NET Framework에서 RESTful 응용 프로그램을 구축하기위한 이상적인 플랫폼입니다.

http://www.asp.net/web-api


편집하다:

특히 ASP.NET 웹 API에는 다음이 포함됩니다.

  1. IIS에서 서비스를 호스팅하도록 선택한 경우 오버 헤드가 감소 된 간소화 된 ASP.NET 파이프 라인
  2. 클라이언트가 웹 API에 쉽게 연결할 수있게하는 HttpClient

답변

오늘날 웹 기반 애플리케이션으로는 고객에게 도달하기에 충분하지 않습니다. 사람들은 매우 똑똑하고 일상 생활에서 아이폰, 모바일, 태블릿 등의 기기를 사용하고 있습니다. 이 장치에는 인생을 쉽게하기위한 많은 응용 프로그램이 있습니다. 실제로 우리는 웹에서 앱 세계로 나아가고 있습니다. 따라서 서비스 데이터를 브라우저 및 모든 최신 장치 앱에 빠르고 간단하게 노출하려면 브라우저 및 모든 장치와 호환되는 API가 있어야합니다.