Code:
@route('/characteristicsToBestWeb', method='OPTIONS')
def respondToCharToBestQueryWebOptions():
response.headers['Access-Control-Allow-Origin'] = settings.allowed_web_origin
response.headers['Access-Control-Allow-Credentials'] = 'true'
# response.headers['Access-Control-Allow-Origin'] = '*'
response.headers['Access-Control-Allow-Methods'] = 'POST, OPTIONS'
response.headers['Access-Control-Allow-Headers'] = 'Origin, Accept,' \
' Content-Type,' \
' Cache-Control,' \
' Pragma,' \
' X-Requested-With,' \
' X-CSRF-Token'
@route('/characteristicsToBestWeb', method='POST')
def respondToCharToBestWebQuery():
response.headers['Access-Control-Allow-Origin'] = settings.allowed_web_origin
response.headers['Access-Control-Allow-Credentials'] = 'true'
# response.headers['Access-Control-Allow-Origin'] = '*'
response.headers['Access-Control-Allow-Methods'] = 'POST, OPTIONS'
response.headers['Access-Control-Allow-Headers'] = 'Origin, Accept,' \
' Content-Type,' \
' Cache-Control,' \
' Pragma,' \
' X-Requested-With,' \
' X-CSRF-Token'
render_response()正如您所看到的,我显式地指定了原点,但是在控制台中使用普通的$http服务和Restangular得到了以下错误。
关于post请求:
XMLHttpRequest无法加载http://vitamiter.com/characteristicsToBestWeb。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此不允许访问源'http://dev.vitapersonal.com:9000‘。
尽管OPTIONS请求返回得很好。
任何帮助都是非常感谢的。
编辑:与XMLHttpRequest配合使用很好:
var req = new XMLHttpRequest();
req.open("POST", API_ROOT + 'characteristicsToBest?cacheBuster=' + Math.random().toFixed(5) , true);
req.setRequestHeader("Content-Type", "application/json");
req.setRequestHeader("Cache-Control", "no-cache, must-revalidate");
req.setRequestHeader("Pragma", "no-cache");
req.onload = function(){
var response = this.response;
$scope.$apply(function(){
console.log(response)
})
}
req.send(JSON.stringify(reqData));WT*-angular?
发布于 2015-01-06 00:22:58
试试这个:
@hook('after_request')
def enable_cors():
response.headers['Access-Control-Allow-Origin'] = '*'
response.headers['Access-Control-Allow-Methods'] = 'PUT, GET, POST, DELETE'
response.headers['Access-Control-Allow-Headers'] = 'Origin, Accept, Content-Type, X-Requested-With, X-CSRF-Token'https://stackoverflow.com/questions/24394713
复制相似问题