xmlhttp.status为0的原因及其解决方案

xiaoxiao2021-02-28  67

         先看本地的test.html:

<html> <head> <script> function loadXMLDoc() { var xmlhttp = new XMLHttpRequest(); // chrome xmlhttp.open("GET", "http://localhost/index.php", true); xmlhttp.send(); xmlhttp.onreadystatechange = function() // 当服务器响应已做好被处理的准备时所执行的任务 { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { document.getElementById("myDiv").innerHTML = xmlhttp.responseText; } } } </script> </head> <body> <button type="button" οnclick="loadXMLDoc()">请求数据</button> <div id="myDiv">hehe</div> </body> </html>         再看apache/php的index.php:

<?php echo "I love you"; ?>       结果, 用alert调试发现, xmlhttp.status总是为0, 什么原因呢? 跨域呗! 怎么解决, 改index.php为:

<?php header("Access-Control-Allow-Origin:*"); echo "I love you"; ?>       重启apache, 然后就OK了, 如下:

        后面我们会继续介绍浏览器的同源策略和跨域问题。

涛歌依旧 认证博客专家 排名第一 点链接学人工智能 公众号免费领资料 ❤️零基础入门进阶人工智能 ❤️欢迎关注涛哥公众号,免费领海量学习资料。涛哥:毕业后就职于华为和腾讯。微信:ai_taogeyijiu
转载请注明原文地址: https://www.6miu.com/read-36060.html

最新回复(0)