Javascript 从本地服务器请求数据的HTTP
我正在本地机器上运行两个Flask应用程序 1) 我的测试客户端网站(在端口5001上) 2) 我的API(在端口5000上) 如果我在浏览器中键入Javascript 从本地服务器请求数据的HTTP,javascript,http,flask,httprequest,Javascript,Http,Flask,Httprequest,我正在本地机器上运行两个Flask应用程序 1) 我的测试客户端网站(在端口5001上) 2) 我的API(在端口5000上) 如果我在浏览器中键入127.0.0.1:5000/search/,我会得到以下信息: Test Hello World 如果我在浏览器中键入127.0.0.1:5001,我会得到一个普通网页,其中包含以下HTML代码(这些代码看起来都正常): 请求数据 测试 函数loadDoc(){ var xhttp=newXMLHttpRequest(); xhttp.onre
127.0.0.1:5000/search/
,我会得到以下信息:
Test Hello World
如果我在浏览器中键入127.0.0.1:5001
,我会得到一个普通网页,其中包含以下HTML代码(这些代码看起来都正常):
请求数据
测试
函数loadDoc(){
var xhttp=newXMLHttpRequest();
xhttp.onreadystatechange=函数(){
如果(xhttp.readyState==4&&xhttp.status==200){
document.getElementById(“demo”).innerHTML=xhttp.responseText;
}
};
xhttp.open(“GET”,“127.0.0.1:5000/search/”,true);
xhttp.send();
}
如您所见,HTTP请求被发送到127.0.0.1:5000/search/
,该请求在浏览器中进行测试和工作,并应返回Test Hello World
,但不幸的是没有发生任何事情
基本上,我点击“请求数据”按钮(见上文),完全没有发生任何事情
你知道为什么吗?我已经被困在这个问题上好几个小时了
出于安全原因,浏览器限制从脚本中启动的跨源HTTP请求。例如,XMLHttpRequest遵循相同的源策略。因此,使用XMLHttpRequest的web应用程序只能向自己的域发出HTTP请求。为了改进web应用程序,开发人员要求浏览器供应商允许XMLHttpRequest进行跨域请求
这些资源可能会有所帮助出于安全原因,浏览器限制从脚本中启动的跨源HTTP请求。例如,XMLHttpRequest遵循相同的源策略。因此,使用XMLHttpRequest的web应用程序只能向自己的域发出HTTP请求。为了改进web应用程序,开发人员要求浏览器供应商允许XMLHttpRequest进行跨域请求 这些资源可能会有所帮助
您的URL缺少其方案。您需要在其前面加上
http://
如果打开浏览器的开发者工具并查看“网络”选项卡,您应该会看到其中列出的404错误
一旦修复了该问题,很可能会出现跨原点错误,如中所述 您的URL缺少其方案。您需要在其前面加上
http://
如果打开浏览器的开发者工具并查看“网络”选项卡,您应该会看到其中列出的404错误
一旦修复了该问题,很可能会出现跨原点错误,如中所述
<!DOCTYPE html>
<html>
<body>
<button type="button" onclick="loadDoc()">Request data</button>
<p id="demo">TEST</p>
<script>
function loadDoc() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200) {
document.getElementById("demo").innerHTML = xhttp.responseText;
}
};
xhttp.open("GET", "127.0.0.1:5000/search/", true);
xhttp.send();
}
</script>
</body>
</html>
"127.0.0.1:5000/search/"