跨域参数
参数 | 说明 |
---|---|
allowCredentials | 配置是否允许发送Cookie,用于 凭证请求, 默认不发送cookie |
allowedHeaders | 配置允许的自定义请求头,用于 预检请求 |
allowedMethods | 配置跨域请求支持的方式,如:GET、POST,且一次性返回全部支持的方式 |
allowedOrigins | 配置允许访问的源,如:http://demo.com,*表示允许全部的域名 |
exposedHeaders | 配置响应的头信息, 在其中可以设置其他的头信息,不进行配置时, 默认可以获取到Cache-Control、Content-Language、Content-Type、Expires、Last-Modified、Pragma字段 |
maxAge | 配置预检请求的有效时间, 单位是秒,表示:在多长时间内,不需要发出第二次预检请求 |
preflightContinue | 一个布尔值,指示插件将OPTIONS预检请求代理到上游服务。 |
跨域测试
参数 | 测试条件 | 预期结果 |
allowedOrigins | * | 允许所有域名 |
http://demo.com,前端也是http://demo.com | 成功 | |
http://demo.com,前端不是http://demo.com | 失败 | |
allowedMethods | 不填,请求GET POST PUT DELETE | 成功 |
GET,请求POST PUT DELETE | 请求GET,POST,HEAD成功,其他失败 | |
GET,请求GET,POST,HEAD | 成功 | |
PUT,请求GET POST DELETE | 失败 | |
PUT,请求PUT | 成功 | |
allowedHeaders | 配置x-token,请求header带 y-token | 失败 |
配置x-token,请求header带 x-token | 成功 | |
不配置,请求header带x-token | 失败 | |
exposedHeaders | 配置x-token,后端返回header中带x-token | 成功 |
配置x-token,后端返回header中带y-token | 失败 | |
不配置,后端返回header中带x-token | 失败 | |
allowCredentials | yes | 允许发送Cookie |
no | 不允许发送Cookie | |
maxAge | 3600 | |
no | 预检第二次发送 | |
preflightContinue | yes | |
no |