내 애플리케이션의 HTML5, jQuery Mobile 프론트 엔드가 Java 서버 (Spring, Hibernate, MySQL)와 대화한다. 응용 프로그램은 품질 보증 환경뿐만 아니라 내 노트북에서도 잘 작동합니다. 품질 관리에서 서버의 IP 주소를 사용하여 애플리케이션에 액세스하고 있습니다. 라이브 환경 (QA와 동일한 서버이지만 Tomcat의 다른 웹 응용 프로그램)에서 응용 프로그램을 호스트하고 URL을 사용하여 도메인 이름에 액세스하려고하면 $ .ajax가 응용 프로그램 반환 오류를 호출합니다.도메인 이름 기반 URL을 통해 Java Spring 서비스에 액세스 할 때 jQuery .ajax 호출이 반환되는 오류
An error has occurred making the request: Error: NETWORK_ERR: XMLHttpRequest: Exception 101
에서 :
An error has occurred making the request: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE)" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: http://www.smartcloudlearning.mobi/js/jquery-1.7.1.min.js :: <TOP_LEVEL> :: line 4" data: no]
내가 크롬에서 다음과 같은 오류가 발생합니다 : 나는 파이어 폭스에서 다음과 같은 오류가
$.ajax({
type : "GET",
url : "http://www.smartcloudlearning.mobi:9080/SmartCloudLearningMobi/rest/resource/getResourceTypes",
cache : false,
async : false,
dataType : 'json',
success : function(rTypes) {
Alert("success!");
},
error : function(XMLHttpRequest, textStatus, errorThrown) {
alert("An error has occurred making the request: " + errorThrown);
}
});
을 다음과 같이 호출
하나는 서버 로그에서 요청한 Spring 서비스가 성공적으로 호출되었지만 클라이언트가받지 못한 것처럼 보입니다. 자료! 나는 URL
브라우저에서 직접http://www.smartcloudlearning.mobi:9080/SmartCloudLearningMobi/rest/resource/getResourceTypes
에 충돌하는 경우
, 나는 결과를 기대하세요! 아파치에서 Tomcat으로 서버 요청을 전달하는 방법 때문인지 알 수 있습니다. 다음
아파치/아파치 서버의 httpd.conf 파일의 라인은 다음과 같습니다ProxyPass /SmartCloudLearningMobi http://www.smartcloudlearning.mobi:9080/SmartCloudLearningMobi
ProxyPassReverse /SmartCloudLearningMobi http://www.smartcloudlearning.mobi:9080/SmartCloudLearningMobi
사람이 어긋 나서 여기에 무엇을 말해 줄래? 매우 감사! 내 URL에 포트 번호를했기 때문에
이 브라우저는 아약스 호출 오류를주고 있었다 :
나는 문제를 해결하기 위해 관리. 내 QA URL에서 '실제'URL을 만들 때 포트 번호가 이월되었습니다. .ajax 호출의 URL에서 포트 번호를 제거하면 호출이 성공을 반환하기 시작했습니다!
제이슨 포글 리아 (Jason Foglia)의 성명서 "... 또한 포트 ..."는 그 앵글을 탐험하는 것을 느꼈습니다 ... 고마워요!
아약스 전화 –
URL에 오프닝 따옴표가 누락되었습니다. 죄송합니다 ... 코드에서이 게시물을 초안했을 때 내 오타였습니다. 실제 코드에는 여는 따옴표가 있습니다. –