이 문서에서는 PHP에서 ajax용 window.name 크로스 도메인 솔루션을 설명합니다. 참조용으로 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.
핵심 원칙: 창 개체의 이름 속성은 창 위치가 변경된 후 다시 로드될 때 이름 속성이 변경되지 않고 그대로 유지될 수 있습니다. .
이 원칙에 따라 페이지 A의 iframe을 사용하여 다른 도메인의 페이지 B를 로드하고, 페이지 B의 JavaScript를 사용하여 window.name에 전달할 데이터를 할당할 수 있습니다. 페이지 A의 iframe이 로드된 후 페이지. A는 iframe 주소를 수정하여 동일한 도메인의 주소로 변경한 후 window.name의 값을 읽을 수 있습니다.
관련 학습 권장사항: php 프로그래밍(동영상)
예: www.a.com과 www.b.com이라는 두 개의 웹사이트가 있는데, www.a.com/a에서 다운로드하고 싶습니다. .html www.b.com/data.html 데이터를 가져옵니다.
세 개의 파일이 필요합니다. 데이터를 가져오고 표시하려면 www.a.com 아래의
a.html 데이터를 제공하려면 www.b.com 아래의
data.html www.a.com 프록시 파일 아래의
proxy.html a.html과 동일한 도메인에 있는 경우 일반적으로 빈 HTML 파일입니다. www.b.com의
data.html은 다음과 같습니다. www.a.com의
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <script type="text/javascript"> //添加需要传递的数据,大小一般为2M,IE和firefox下可以大至32M左右 window.name = '[{"name":"test1"},{"name":"test2"}]'; </script> </body> </html>
proxy.html은 다음과 같습니다. www.a.com의
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <!-- 空的html文件 --> </body> </html>
a.html은 다음과 같습니다.
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <!-- 用于引用www.b.com/data.html文件 --> <iframe id="iframe" src=""></iframe> <!-- 显示获取到的数据 --> <p id="data"></p> <script type="text/javascript" src="./jquery.js"></script> <script type="text/javascript"> var ifr = document.getElementById("iframe"); ifr.src = "http://www.b.com/data.html"; if (ifr.attachEvent) { ifr.attachEvent("onload", loadfunc); } else { ifr.onload = loadfunc; } var state = 0; function loadfunc() { if(state == 0) { state = 1; ifr.contentWindow.location = "http://www.a.com/proxy.html"; } else { var data = ifr.contentWindow.name; $.each($.parseJSON(data), function(i, v) { $("#data").append(v.name); }); //销毁iframe,保证安全 ifr.contentWindow.document.write(""); ifr.contentWindow.close(); document.body.removeChild(ifr); } } </script> </body> </html>
관련 영상 추천: PHP 프로그래밍 초보부터 마스터까지
위 내용은 PHP 기반 Ajax 크로스 도메인 솔루션 - window.name 예제 분석 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!