codememo

Angular 전개 방법JS 앱과 Spring Restful API 서비스가 동일한 도메인/서버에 있습니까?

tipmemo 2023. 3. 19. 18:16
반응형

Angular 전개 방법JS 앱과 Spring Restful API 서비스가 동일한 도메인/서버에 있습니까?

저는 Spring과 Angular JS가 처음이에요.백엔드의 restful API를 구축하기 위해 이 절차를 따랐습니다.요구에 따라 Json을 전송합니다.따라서 가이드에 따르면 "mvn spring-boot:run"을 실행하면 localhost:8080에서 Tomcat 서버가 시작됩니다.

그리고 Yoman angular generator를 사용해서 angular app을 만들었습니다.앵귤러 앱 내에서 "grunt serve"를 실행하면 프론트 엔드 앱이 localhost:9000으로 실행됩니다.

동일한 도메인(localhost:8080 등)에 있는 Springboot Tomcat 서버와 함께 사용할 수 있도록 하려면 어떻게 해야 합니까?

제가 따를 수 있는 샘플 프로젝트가 있나요?아래 프로젝트를 찾았는데 Tomcat에 대한 배경이 별로 없어서 아직 작동하지 않습니다.

  1. https://github.com/robharrop/spring-angularjs
  2. https://github.com/GermanoGiudici/angularjs-maven-tomcat-seed
  3. https://github.com/xvitcoder/spring-mvc-angularjs

다음 중 하나를 선택해야 합니다.

  • 빌드된 파일(grunt build기본적으로 dist/디렉토리의 모든 것)
  • raw 파일(index.html 및 현재 모든 JS)

다음 폴더 중 하나에 복사합니다(/public/ 권장).http://spring.io/blog/2013/12/19/serving-static-web-content-with-spring-boot

Spring Boot에서는 다음 중 하나의 디렉토리에 있는 정적 웹 리소스가 자동으로 추가됩니다.

/META-INF/리소스/

/timeout/

/static/

/public/

즉, Spring Boot은 Java 또는 Groovy 어플리케이션을 쉽게 구축할 수 있을 뿐만 아니라 클라이언트 측 JavaScript 코드를 쉽게 도입하여 실제 웹 서버 환경에서 테스트할 수 있습니다.

프런트 엔드를 변경할 때마다 파일을 다시 복사해야 하기 때문에 개발에는 어려움이 따릅니다.프로덕션에서는 스프링 앱과 함께 빌드된 파일의 버전화된 복사본을 배포하는 것이 목표입니다.

개발을 위해 Grunt가 Angular 콘텐츠에 서비스를 제공하고 Tomcat과 Grunt 서버(노드입니까?)를 모두 실행하고 프런트엔드와 백엔드 간에 크로스 오리진 요청을 활성화하는 것을 고려해 보는 것이 좋습니다.또는, 각진 디렉토리 전체를 위의 디렉토리 중 하나에 카피할 수도 있습니다만, 이것은 단기적인 어프로치입니다.

언급URL : https://stackoverflow.com/questions/23920508/how-to-deploy-angularjs-app-and-spring-restful-api-service-on-the-same-domain-se

반응형