문제

다른 서버 (동일한 도메인 및 상자, 다른 포트만으로 Ajax 호출을하고 싶습니다.

내 페이지는

http://localhost/index.html

Ajax get 요청을 다음과 같이 만들고 싶습니다.

http://localhost:7076/?word=foo

이 오류가 발생합니다.

Access to restricted URI denied (NS_ERROR_DOM_BAD_URI) 

다른 도메인에 Ajax 요청을 할 수 없다는 것을 알고 있지만 여기에도 다른 포트가 포함된 것 같나요?해결 방법이 있나요?

도움이 되었습니까?

해결책

다른 포트에 대한 포트 80 서버 프록시 요청에 특정 페이지가 있습니다.예를 들어:

http://localhost/proxy?port=7076&url=%2f%3fword%3dfoo

마지막 쿼리 문자열 인수 값의 URL 인코딩을 확인하세요.

다른 팁

JSONP를 사용할 수 있습니다.여기에서 요청과 함께 콜백을 지정하고, Ajax 요청의 응답이 콜백 함수 이름으로 래핑됩니다.XmlHttpRequest를 사용하는 대신 URL과 함께 HTML 문서에 태그를 삽입합니다.그런 다음 응답이 검색되면 콜백 함수가 호출되어 데이터를 매개변수로 전달합니다.

이것을 확인하세요 블로그 게시물 예를 들어

이는 브라우저 제한사항입니다.모든 자바스크립트 호출은 스크립트 홈과 동일한 서버 및 포트로 이루어져야 합니다.이를 해결하려면 서버 측에 뭔가가 필요합니다.즉.에 프로세스가 있습니다 localhost 요청을 다음으로 전달 localhost:7076.

짜증나지만 꼭 필요한 일이다...기본적으로 당신이 해야 할 일은 로컬 프록시를 통해 AJAX 요청을 프록시하는 것입니다. 일부 서버 측 스크립트/페이지/사용 중인 동일한 도메인에 있는 모든 것-전화를 받고 다른 리소스 서버로 전달- 옆.당신이 할 수 있는 몇 가지 IFRAME 트릭이 있을 수 있지만 그것들이 잘 작동하지 않는 것 같습니다...오랜 시간이 걸렸지만 틀렸을 수도 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top