1, 문제가있는 것입니다
동일 출처 정책 (동일 출처 정책)
자바 스크립트는 페이지를 읽을 도메인 페이지에 액세스 할 수 있습니다. 자바 스크립트가 자신의 도메인과는 아무 상관이없는 사이트 및 관련 문서에 포함 된 전용 도메인 자바 스크립트 코드를 정의, 주목해야한다. 다음 샘플 코드 :
<! DOCTYPE HTML >
< HTML LANG = "EN" >
< 머리 >
< 메타 문자 집합 = "UTF-8" >
< 제목 > 8000 : // localhost를 :이 웹 페이지는 HTTP에서 온 것입니다 </ 제목 >
< 스크립트 SRC / "= /ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js " > </ 스크립트 >
</ 헤드 >
< 본문 >
< DIV ID ="테스트 " > 123 <
스크립트 유형 = "텍스트 / 자바 스크립트" >
을 console.log ($ ( ' #test ' )는 .text ());
</ 스크립트 >
</ 몸 >
</ HTML >
에서 HTML 문서는 제공 http://localhost:8000
이 도메인의 의미, http://localhost:8000
페이지가 JQuery와로드 있지만 (도메인과 포트도 관련이있는), ajax.googleapis.com
액세스 할 수있는, 단, JQuery와 도메인과 그 도메인이 HTML 문서에 대한 위치 속성 HTML 문서는 위의 코드가 제대로 실행되도록.
부록 : 이유 코드를 사용하여 보편적 개발자 자바 스크립트 라이브러리 (예를 들어, JQuery와) 같은 URL에서 공개 주소입니다. 사용자로드는 JS하면, 미래는 페이지 로딩 속도를 빠르게하기 위해 브라우저 캐시를로드 할 때.
이러한 관점에서, 질문자에 알고있는 경우 远端
다음 원하는 기능을 달성 할 수없는, 인터넷에서 모든 페이지를 참조, 경우에 远端
당신이 사이트를 통해 제어 할 수 있습니다 질문자를 의미하여 편안한 다음을 참조 동일 출처 정책;
동일 출처 정책을 휴식
- document.domain을 : 하위 도메인에 대한 상황. (복수의 iframe을 페이지)의 복수의 윈도우, 같은 필드 값, 같은 이국적인 자바 스크립트 액세스 창을 document.domain을 설정하여;
- 크로스 원산지 자원 공유 : 액세스-Control 키는 서버에서 머리를 돌려 증가
허용 - 원산지는, 머리가 도메인에 대한 모든 허용 된 액세스 목록이 포함되어 있습니다. 지원되는 브라우저는 자바 스크립트이 페이지 이러한 필드에 액세스 할 수 있습니다;
- 크로스 문서 메시징 : 현장 독립적 인 방식으로, 자바 스크립트, 서로 다른 문서는 제한없이 수락 메시지를 보냈지 만 적극적으로 관심을 다른 문서의 속성과 메소드 호출을 읽는하지 될 수
질문자가있는 경우 远端
페이지를 제어 할, 당신은 두 번째 방법을 시도 할 수 있습니다.
서버 측 잡아
질문자의 요구에 따라, 더 실행 가능한 옵션은 서버 측에서 처리되어야합니다. 와 ( http://phantomjs.org/ ), 서버 측의 자바 스크립트 구문 DOM 조작을 사용할 수 있습니다, 당신은 추가 분석을 nodejs 사용할 수 있습니다, 물론, 당신은 또한 파이썬, PHP, Java 언어 후속 작업을 사용할 수 있습니다 .
결론 :
(1) 서버 오픈 크로스 도메인 페이지를 제한합니다;
(2) 서비스의 끝은 페이지를 요청