【发布时间】:2019-10-17 04:55:18
【问题描述】:
很抱歉,如果这是一个非常无知的问题,但大使是否有可能真正处理 CORS 标头和飞行前 OPTION 响应?
文档 (https://www.getambassador.io/reference/cors) 对我来说似乎有点模棱两可,如果只有钩子可以阻止请求,或者它是否可以真正代表服务响应。
这是我的情况:在对某些微服务的所有 http 请求之前,我有大使。 [原因] 我们现在需要一个单独的域来向同一个大使发出请求。
我配置了 AuthService,并且根据文档“当您使用外部授权时,每个传入请求在路由到其目的地之前都经过身份验证,包括飞行前 OPTIONS 请求。”这是完全有道理的,这就是我所看到的。我的 AuthService 被配置为允许正确的事情,这似乎是有效的。 AuthService 以适当的标头响应,但 Ambassador 似乎只是忽略了这一点,只关心 AuthService 是否以 200 响应。 (这似乎完全合理。)
我的大使模块上有这个注释:
getambassador.io/config: |
---
apiVersion: ambassador/v1
kind: Module
name: ambassador
config:
service_port: 8080
cors:
origins: [my domain here]
credentials: true
这似乎并没有达到我的预期,即处理 CORS 标头和飞行前...而是将其转发到服务以处理所有 CORS 内容。
【问题讨论】:
标签: kubernetes cors microservices ambassador