Flask中跨域问题无法解决
我正在尝试让flask服务器和html页面之间进行一些通信。我按照这里的说明加入了跨域代码 http://flask.pocoo.org/snippets/56/,但还是不行。以下是我的python代码:
from flask import *
from crossdomain import *
app = Flask(__name__)
@app.route('/')
@crossdomain(origin='*')
def pocetna():
return '1'
if __name__ == '__main__':
app.run(host='0.0.0.0',port=8081,debug=True)
这是我的javascript代码:
function prebaci(){
var xmlhttp;
xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
if (xmlhttp.responseText==1) document.getElementById("kuca").innerHTML="RADI";
else document.getElementById("kuca").innerHTML="NE RADI";
}
}
xmlhttp.open("GET","127.0.0.1:8081",true);
xmlhttp.send();
}
在谷歌浏览器中出现的错误是:
XMLHttpRequest cannot load %3127.0.0.1:8081. Cross origin requests are only supported for HTTP.
在火狐浏览器中出现的错误是:
NS_ERROR_DOM_BAD_URI: Access to restricted URI denied
1 个回答
1
注意这个具体的错误信息,它告诉你你没有连接到一个HTTP服务器;至少Chrome是这么认为的。
你可以试试:
xmlhttp.open("GET","http://127.0.0.1:8081/",true);
比如,使用一个正确格式的网址。