2013-10-23 2 views
-1

다음 아이디어를 고려하십시오.웹 서비스 이해, 아키텍처 예

방문자가 무엇이든 (농담, 그림 등) 올릴 수있는 웹 응용 프로그램을 간단하게 만들고 싶습니다. 각 게시물은 데이터베이스에 저장되며 각 게시물에는 좋아요/싫어하는 옵션이 있습니다. 로그인 및 등록 시스템이 필요 없습니다.

는 그 후 나는 간단한 안드로이드 응용 프로그램 (가장 좋아하는 만 게시물을 받게됩니다 예를 들어, 하루에 안드로이드 응용 프로그램이 대부분 10 개 게시물 표시됩니다 그런 식으로 안드로이드 응용 프로그램에서 언급 한 데이터베이스와의 통신을 필요을 구축하려는 투표 및 기타)

"웹 응용 프로그램과 웹 서비스의 차이"라는 주제에 대한 많은 답변을 읽었으며 잘 이해하지 못합니다.

먼저 웹 서비스를 사용하여 데이터베이스 (XML)에서 데이터를 가져 와서 안드로이드 애플리케이션을 통해 표시 할 수 있습니까? 내가이 예를 통해 웹 서비스를 이해하는 방법

내가 할 수있는 경우는 다음입니다 :
1. 웹 응용 프로그램이 사용자와 게시물과 함께 데이터베이스를 채우기위한 것입니다.
2. 웹 서비스는 웹 응용 프로그램에 대해 아무것도 모르고 있으며 웹 응용 프로그램은 웹 서비스에 대해 알지 못합니다. 이 두 가지는 독립 실행 형 엔티티입니다. 한편 웹 서비스는 웹 응용 프로그램에서 데이터베이스에 저장된 데이터를 사용합니까?
3. 웹 서비스는 그가 그 시스템에 특정 형식의 일부 데이터를 보낼 것입니다 그런 식으로 몇 가지 다른 시스템을위한 것입니다?
4. (다른 말로이 웹 애플리케이션과 같은 사용자 inteneded되지 않음) 데이터베이스에 연결하는 방법을 알고 데이터를 가져 오는 방법을 알고 다른 형식으로 데이터를 변환하고 클라이언트에 다시 보내는 방법을 알고있는 여러 가지 방법을 통해 웹 서비스를 구현해야합니다. (이 경우 안드로이드 응용 프로그램입니까?) 그런 다음 Android 애플리케이션이 해당 데이터를 구문 분석하여 앱 사용자에게 표시합니다.
5. 실제 웹 응용 프로그램, 웹 서비스 및 DB는 다른 위치에있을 수 있습니다.

이렇게 되니? enter image description here

이렇게 잘못된 접근 방식과이 작동 방식은 무엇입니까? 이미지를 통해 다른 아키 텍처를 제안하거나 도움을 청할 수 있습니까?

답변

0

나는 REST API를 사용하여 Android 및 웹 응용 프로그램에서 재사용 할 것을 권장합니다.

비즈니스 로직 및 데이터베이스 연결은 API에 있습니다.

Microsoft Web API 및 ASP.NET MVC를 도울 수있는 기술로 API와 MVC 응용 프로그램간에 코드를 쉽게 다시 사용할 수 있습니다.

+0

그렇다면 올바른 생각은 데이터베이스에서 JSON/XML 형식의 데이터를 반환하는 적절한 조치로 웹 응용 프로그램에서 "API"컨트롤러를 만드는 것입니다. 이 경우 컨트롤러는 웹 서비스와 비슷합니다. 그러면 안드로이드 응용 프로그램은 webapplication과 같은 요청으로 데이터를 검색 할 수 있습니다.co.kr/api/getSomething ? – Srle

+1

정확하게 HTTP 프로토콜을 기반으로 한 ** "RESTful 웹 서비스"**라고합니다. "API 컨트롤러"는 웹 페이지, 아약스 또는 모바일 애플리케이션에서 컨트롤러 액션 (경로 예 : webapplication.com/api/getSomething)을 호출 할 수있는 "MVC 컨트롤러"와 거의 같습니다. 거의 모든 플랫폼에 HTTP 클라이언트가 있기 때문입니다. – Carlos487