我想在我的主干网应用程序127.0.0.1和我的烧瓶服务器127.0.0.1:5000之间进行跨域请求。在我切换到主干网之前,我有一个Ember.js应用程序,我也遇到了同样的问题。但是我在我的烧瓶应用程序中添加了这个,让它工作起来:
@app.after_request
def after_request(data):
response = make_response(data)
response.headers['Content-Type'] = 'application/json'
response.headers['Access-Control-Allow-Origin'] = 'http://localhost'
return response并以这样的方式配置Ember RESTAdapter:
adapter: DS.RESTAdapter.create({
url : 'http://127.0.0.1:5000',
// In order to allow cross domain requests
ajax: function(url, type, hash) {
jQuery.ajax(url)
}
})
});但这不适用于我的骨干应用程序。
XMLHttpRequest无法加载http://127.0.0.1:5000/files。请求标头字段Content-Type是Access-Control-Allow-Headers不允许的。
我想我得在客户端改变一些设置。但我不知道是什么。为了能够进行跨域请求,我需要做什么?
发布于 2014-10-16 03:05:17
这就是对我有用的东西。
http://flask-cors.readthedocs.org/en/latest/
$ pip安装-U烧瓶-cors
from flask import Flask
from flask.ext.cors import CORS, cross_origin
app = Flask(__name__)
cors = CORS(app)
app.config['CORS_HEADERS'] = 'Content-Type'
@app.route("/")
@cross_origin()
def helloWorld():
return "Hello, cross-origin-world!"发布于 2013-05-03 08:34:02
我通过添加
response.headers['Access-Control-Allow-Headers'] = "Origin, X-Requested-With,Content-Type, Accept"到after_request()方法。
发布于 2013-05-01 16:03:05
为了发展,你可以:
或者将Access-Control-Allow-Origin设置为*
https://stackoverflow.com/questions/16320997
复制相似问题