添加 Cors
parent
e81e96512c
commit
d5d00ba709
|
@ -0,0 +1,46 @@
|
|||
框架内置有一个 "一键配置跨域支持" 的中间件。非常简单实用。
|
||||
|
||||
```js
|
||||
{
|
||||
cors: {
|
||||
enabled: false,
|
||||
credentials: false,
|
||||
origin: [], // ['abc.com', 'a.foo.com']
|
||||
maxAge: 14400
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
从[默认配置](https://github.com/bytedo/gmf.core/wiki/默认配置)中可以看出, 我们想要开启跨域支持, 最简单的做法, 只需要把里面的enabled的值设为true即可。
|
||||
|
||||
即, 在入口文件中, 加入以下代码即可开启:
|
||||
|
||||
```js
|
||||
app.set({ cors: { enabled: true } })
|
||||
```
|
||||
|
||||
有时, 我们并不想这么简单粗暴的开启跨域支持, 需要对来源进行一些基础的校验, 如域名, 这时候就可以在origin字段中配置了, 配置应为一个数组, 允许同时配置多个可信域名。
|
||||
|
||||
注意: 这里的域名配置中, 根域名和二级域名、三级域名等, 可认为是同一域名, 只需要填写根域名即可。
|
||||
|
||||
```js
|
||||
app.set({ cors: { enabled: true, origin: ['aaa.com', 'bbb.com'] } }) // 这里不需要再写 'foo.aaa.com' 等二级域名、三级域名了。
|
||||
```
|
||||
|
||||
|
||||
如果需要支持cookie, 还需要开启 credentials。
|
||||
|
||||
```js
|
||||
app.set({ cors: { enabled: true, credentials: true } })
|
||||
```
|
||||
|
||||
另外还有一个 maxAge 缓存时长字段, 根据需要自行设置即可。
|
||||
|
||||
|
||||
|
||||
----
|
||||
|
||||
上一节: [⟪路由⟫](https://github.com/bytedo/gmf.core/wiki/Router)
|
||||
|
||||
下一节: [⟪控制器⟫](https://github.com/bytedo/gmf.core/wiki/Controller)
|
||||
|
Loading…
Reference in New Issue