您的位置:首页 > 编程语言 > Python开发

python bottle框架 解决跨域问题的正确方式

2018-12-06 17:33 337 查看

经查询,网上有几种说法

https://www.cnblogs.com/EmptyFS/p/6138923.html

我首先查到的就是这个,我采用了文中所说的修改源码的方式,
但是经测试发现,修改源码依然无效

然后我又查询到下面这个链接

https://www.cnblogs.com/EmptyFS/p/6138923.html

文中的解决方法在加一个钩子函数,在请求前进行一定修改

但是改完还是报错

正确的处理方式为下面的代码

在钩子函数中对请求前后都进行处理进行处理

@hook('before_request')
def validate():
REQUEST_METHOD = request.environ.get('REQUEST_METHOD')

HTTP_ACCESS_CONTROL_REQUEST_METHOD = request.environ.get('HTTP_ACCESS_CONTROL_REQUEST_METHOD')
if REQUEST_METHOD == 'OPTIONS' and HTTP_ACCESS_CONTROL_REQUEST_METHOD:
request.environ['REQUEST_METHOD'] = HTTP_ACCESS_CONTROL_REQUEST_METHOD

@hook('after_request')
def enable_cors():
response.headers['Access-Control-Allow-Origin'] = '*'
# response.headers['Access-Control-Allow-Methods'] = 'GET,POST,PUT,DELETE,OPTIONS'
response.headers['Access-Control-Allow-Headers'] = '*'
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: