2013-04-21 3 views
1

opentripplanner-webapp와 opentripplanner-api-webapp라는 두 개의 앱이 있습니다. 성공적으로 로컬 Tomcat 서버에 배포했습니다. 앱의 URL은 http://localhost:8080/opentripplanner-webapphttp://localhost:8080/opentripplanner-api-webapp입니다. Appfog에 앱을 배포하면 두 앱 모두 다른 도메인을 제공합니다. 문제는 내 앱에서 교차 도메인에서 작동하지 않는 ajax 요청 및 응답을 사용한다는 것입니다. 나는 어떤 해결책을 찾기 위해 이틀 동안 찾고 있지만 적절한 해결책을 찾지 못했습니다. 친절하게 안내 해줍니다. Thankss동일한 도메인에서 두 개의 웹 사이트 호스팅

답변

0

여기 당신을 위해 몇 가지 옵션이있다 :

  • 사용 JSONP (JSON with Padding). 이 프로토콜을 지원할 수 있도록 API를 작성해야하지만 너무 어렵지는 않습니다.
  • opentripplanner-webappopentripplanner-api-webapp을 모두 생성하여 Cross Origin Resource Sharing을 지원합니다. 즉, 웹 앱이 요청에 Origin 헤더를 보내고 서버가 Access-Control-Allow-Origin 헤더로 응답하고 일치하는 경우 브라우저가 요청을 수락합니다. 그러나 대부분의 최신 브라우저가 있지만 이것은 not supported by all browsers입니다.
  • opentripplanner-webapp에서 API에 대한 프록시 요청 인 프록시 서블릿을 사용하십시오. 이 서블릿을 예를 들어 "마운트"할 수 있습니다. webapp에 /api을 추가하면 모든 요청이 내부적으로 opentripplanner-api-webapp로 전달됩니다. 그래서 AYAX 요청을 http://apiserver 대신에 http://webappserver/api으로 보낼 것입니다. 브라우저의 경우 이는 일반적인 동일한 출발지 요청과 같습니다. 이 방법은 모든 브라우저에서 작동하지만 더 많은 설정이 필요할 수 있습니다.
관련 문제