解决 Yii2 + Vue 前后台分离时跨域的问题
19-10-24 17:23
字数 1360
阅读 4126
已编辑
为了解决前端发送 ajax 请求跨域的问题,需要如下的配置。
在控制器的 behaviors 方法中增加下面的代码
'corsFilter' => [
'class' => Cors::class,
'cors' => [
'Origin'=> ['http://localhost:8080'],
'Access-Control-Request-Method' => ['*'],
'Access-Control-Request-Headers' => ['*'],
'Access-Control-Allow-Credentials' => true,
'Access-Control-Max-Age' => 3600,
'Access-Control-Expose-Headers' => ['Content-Type, Content-Length, Authorization, Accept, X-Requested-With'],
]
]
上边配置的解释
Origin
即Access-Control-Allow-Origin
表示 响应头指定了该响应的资源是否被允许与给定的origin共享。Access-Control-Request-Method
用于通知服务器在真正的请求中会采用哪种 HTTP 方法。因为预检请求所使用的方法总是 OPTIONS ,与实际请求所使用的方法不一样,所以这个请求头是必要的。Access-Control-Request-Headers
用于通知服务器在真正的请求中会采用哪些请求头。Access-Control-Allow-Credentials
表示是否可以将对请求的响应暴露给页面。返回true则可以,其他值均不可以。Access-Control-Max-Age
表示返回结果(即Access-Control-Allow-Methods
和Access-Control-Allow-Headers
提供的信息) 可以被缓存多久。Access-Control-Expose-Headers
列出了哪些首部可以作为响应的一部分暴露给外部。
注意
如果设置 Origin
为 ['*']
,即所有的前端跨域请求可以接受,同时把 Access-Control-Allow-Credentials
设置为 true
,Yii 会直接报错:Allowing credentials for wildcard origins is insecure. Please specify more restrictive origins or set 'credentials' to false in your CORS configuration.。
告诉你使用通配符的凭证是不安全的,让你设置更严格的 Origin
或者把 Access-Control-Allow-Credentials
设置为 false
。
也就是说不能 Access-Control-Allow-Credentials
为 true
并且 Access-Control-Allow-Origin
为 *
。
因为 Access-Control-Allow-Credentials
的意思就是允许跨域请求在请求头中携带凭证,比如 cookie,做身份识别,但是你又把 Access-Control-Allow-Origin
设置为 *
,这是说不通的,是相悖的。
具体原因可以看这里。
更多关于HTTP访问控制 (CORS)的知识
0人点赞>
0 条评论
排序方式
时间
投票
快来抢占一楼吧
请登录后发表评论
相关推荐
文章归档
2024-11
1 篇
2024-06
1 篇
2024-05
2 篇
2024-04
2 篇
2024-03
2 篇
展开剩余 68 条
2024-01
1 篇
2023-10
1 篇
2023-09
1 篇
2023-08
1 篇
2023-06
1 篇
2023-04
1 篇
2022-12
2 篇
2022-06
1 篇
2022-04
4 篇
2022-03
3 篇
2022-01
6 篇
2021-12
2 篇
2021-11
2 篇
2021-10
2 篇
2021-09
1 篇
2021-08
2 篇
2021-07
4 篇
2021-06
1 篇
2021-05
3 篇
2021-04
3 篇
2021-01
2 篇
2020-11
1 篇
2020-10
3 篇
2020-09
2 篇
2020-08
1 篇
2020-07
5 篇
2020-06
5 篇
2020-05
1 篇
2020-04
1 篇
2020-03
2 篇
2020-02
3 篇
2020-01
1 篇
2019-11
5 篇
2019-10
10 篇
2019-09
12 篇
2019-08
17 篇
2019-07
8 篇
2019-05
3 篇
2019-04
8 篇
2019-03
7 篇
2019-02
8 篇
2019-01
5 篇
2018-12
7 篇
2018-11
8 篇
2018-10
4 篇
2018-09
7 篇
2018-08
12 篇
2018-07
9 篇
2018-06
6 篇
2018-05
11 篇
2018-04
18 篇
2018-03
1 篇
2018-02
2 篇
2018-01
10 篇
2017-12
14 篇
2017-11
44 篇
2017-10
13 篇
2017-09
4 篇
2017-08
12 篇
2017-07
5 篇
2017-06
4 篇
2017-05
2 篇
2017-04
3 篇
2017-03
9 篇
2017-02
3 篇
2017-01
2 篇
2016-12
10 篇
2016-11
4 篇
最新文章
最受欢迎
11-07 19:00
06-26 11:51
05-17 17:08
05-17 10:59
04-11 17:05
13 评论
11 评论
10 评论