2014-04-28 3 views
1

저는 AngularJS의 완전한 초보자입니다. 웹 응용 프로그램 인 새 프로젝트에서이 프로젝트를 사용할 수 있는지 확인하고 싶습니다. Struts2 Spring을 사용하여 프로젝트에서 생성 된 몇 페이지를 이미 가지고 있으며 최대 절전 모드입니다. 본인은이 다음 사항을 변환하려면 :동적 콘텐츠가 포함 된 AngularJS 첫 번째 (방문 페이지)

  1. 변환 서버 측 API를 JSON 데이터

    를 반환 REST 스타일에

    질문 : 내가 AngularJS와를 사용하여로드 동적 HTML을 사용할 수 있습니다. 나는 그렇다고 생각한다. 어떻게 확실하지?

    현재 저는 서버 쪽에서 속도 템플릿을 사용하여 HTML 템플릿에 데이터를 채우고 AJAX에서 응답으로 보냅니 까? AngularJS를 사용하려고하면 무엇이 변경됩니까?

  2. DB에 저장된 일부 이미지와 데이터를 표시하는 데 사용되는 방문 페이지가 있습니다. AngularJS를 사용하여 어떻게 표시 할 수 있습니까?

    질문 : 웹 사이트 URL (mysite.com)을 방문했을 때 단 하나의 div 태그가 포함 된 HTML 템플릿을로드 한 다음 AJAX 요청을 실행하여 동적 HTML을로드합니까?

  3. 데이터 API를 REST와 JSON으로 구현하도록 선택하면 AndularJS를 사용하면 Struts2 사용이 무효화됩니까? 나는 여전히 올바른 서버에서 생성됩니다 동적 HTML보기를로드해야 할 것 같아?

  4. 클라이언트에서 AngularJS와 함께 REST 데이터 API를 사용하면 서버 측에서 HTTP 세션 상태를 유지하는 방법은 무엇입니까?

나는 어딘가에서 위의 질문에 대한 답변을 검색하고 읽을 수 있음을 알고 있습니다. 나는 그것들에서 일어나는 토론과 다른 질문들을 수행 할 수 있도록 그것들을 한 곳에서 필요로합니다.

답변

4

나는 에게 몇 가지 질문에 대답 할 수 있습니다

1) 반환 REST 스타일에 서버 측 API를 변환 JSON 데이터

질문 : 수 있습니까 AngularJS를 사용하여로드하려면 동적 HTML을 사용하십시오.네. 어떻게 확실하지? 현재 서버 쪽에서 속도 템플릿을 사용하여 HTML 템플릿에 데이터를 채우고 AJAX에서 응답으로 보냅니 까? AngularJS를 사용하려고하면 무엇이 변경됩니까 ?

제대로 이해했다면 서버 측에서 템플릿을 생성하고 싶습니다. 이 경우 AngularJs가 필요하지 않습니다. 뷰는 서버에 미리 채워져 있으며 브라우저는 정적 콘텐트 (클라이언트 측 관점에서)를받습니다. AngularJs를 사용하려면 템플릿이 서버 측에서 정적 컨텐츠가되고 REST 서비스를 통해 각도로 채워집니다.

2) DB에 저장된 이미지와 데이터를 표시하는 방문 페이지가 있습니다. 이 DB에 저장되어 있습니다. AngularJS? 을 사용하여 어떻게 표시 할 수 있습니까?

질문 : 나는 웹 사이트 URL을 (mysite.com) 쳤을 때 하나의 div 태그가 들어있는 HTML 템플릿을로드하고 AJAX를 동적 HTML을로드 요청을 불까요?

정확하게는 아닙니다. 하나의 div는 jQuery 기반의 approuch ($ .ajax와 같은 것을 사용하고 명령형으로 데이터를 추가하는 것)에 충분할 것입니다. Angular의 경우 템플리트를 반납해야합니다. 그것은 다음과 같이 보일 수 있습니다 : (아마, 당신의 AngularJS와 서비스를 통해) REST 서비스에 요청을 화재 및 인 타이틀 결과

function MyCtrl($scope, $http) { 
    $http.get('/rest/data').success(function(result) { 
    $scope.data = result; 
    }); 
} 

3)의 경우와 템플릿을 채울 것입니다

<ul ng-controller="MyCtrl"> 
    <li ng-repeat="item in data"> 
    <img ng-src="item.image.src"> 
    <span>{{item.data.someTextProperty}}</span> 
    </li> 
</ul> 

그리고 어떤 AngularJS와 컨트롤러를 AndularJS를 사용하면 Struts2의 사용을 무효화합니까? JSON을 사용하여 데이터 API를 REST로 구현하도록 선택 했습니까? 나는 이 여전히 동적 HTML 뷰를로드해야합니다 ( 서버에서 생성 될 것입니다)?

저는 AngularJS가 그냥 대체 할 것이므로 Struts에서 MVC View의 사용을 무효화 할 것이라고 생각합니다. 또한 그것은 당신이 편안하고 컨트롤러 같은 것을 사용하는 것 (스트럿츠와 매우 familliar하지,하지만 나는 이런 식으로 뭔가 있다고 생각) 나는 REST에게 데이터를 사용하는 경우 서버 측에서 HTTP 세션 상태를 유지하는 방법

4) 클라이언트의 AngularJS API?

이것은 짧은 대답이 아니지만 기본적으로 다음과 같은 패턴이 있습니다. AngualrJs는 요청과 응답을 가로채는 HTTP 인터셉터를 제공합니다. 코드 401 (승인되지 않음)으로 응답이 가로 챌 경우 사용자에게 세션을 복원하는 로그인 양식을 제공 할 수 있으며이 작업이 완료된 후 마지막 요청을 다시 시도하십시오. 또한 here이 질문의 다른면을 발견 할 수 있습니다.

내 대답이 도움이되기를 바랍니다.

+0

감사합니다. Andrey. 당신은 대부분의 질문에 답했습니다. 세션 유지 관리에 대한 링크를 살펴 보겠습니다. 감사. –

+0

@ShaileshVaishampayan 도움이된다면 답을 upvote해야합니다 ... –

+1

@AndreaLigios 않았다 :) –

관련 문제