码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2018-12-06 20:16:21      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:处理   函数   environ   code   cors   html   com   headers   www   

经查询,网上有几种说法

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'] = '*'

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

标签:处理   函数   environ   code   cors   html   com   headers   www   

原文地址:https://www.cnblogs.com/huchong/p/10078033.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!