Easywechat 与 CORS 的冲突?
问题描述:
全局 CORS 设置了header头,在使用 Easywechat 的时候不能正常响应。
具体描述如下:
使用laravel搭建了一个 api 服务,设置了全局中间件 cors,设置如下:
return $next($request)->header('Access-Control-Allow-Origin','*')
->header('Access-Control-Allow-Methods','POST,GET,OPTIONS,PUT,DELETE')
->header('Access-Control-Allow-Headers','Content-Type,Accept,Authorization,X-Requested-With')
->header('Access-Control-Allow-Credentials', 'true');
这个时候安装了 Easywechat ,在验证token的时候查看日志报如下错误:
[2017-04-20 17:40:23] local.INFO: request arrived.
[2017-04-20 17:40:23] local.INFO: return response.
[2017-04-20 17:40:23] local.ERROR: Symfony\Component\Debug\Exception\FatalThrowableError: Call to undefined method Symfony\Component\HttpFoundation\Response::header() in /data/appApi/app/Http/Middleware/CORS.php:32
之后注释掉 CORS 的全局中间件,验证成功。
问题是:如果在保证关闭验证跨域请求的情况下,让 Easywechat 跑起来呢?
@际遇 哦哦,我的失误