如何将Origin标头添加到swashbuckle Curl请求中?

时间:2016-05-20 19:00:07

标签: asp.net-web-api swagger swashbuckle

在我的web api后端应用程序中,我们正在执行授权令牌源验证。这是通过在API请求中读取Origin头参数并将其与嵌入授权令牌中的Origin url进行匹配来完成的。这适用于我们的Angular客户端应用程序。

为了允许swashbuckle / swagger传递授权令牌,我按照https://github.com/domaindrivendev/Swashbuckle/issues/501中的说明使用IOperationFilter添加了授权参数,效果很好。

由于我们执行Request Origin标头验证,来自swagger的Curl请求现在不起作用。我最初认为我可以使用名为Origin的IOPeratinFilter添加另一个Header参数,并将原始URL与API请求一起传递并实现相同但当请求到达后端请求时不包含Origin头。

我可以看到以下CUrl请求命令是从swagger生成的,并且它具有预期的Origin头

curl -X GET --header 'Accept: text/html' --header 'Authorization: bearer <token>' --header 'Origin: http://localhost:6161' 'http://localhost:6161/CustomerPersonalProfiles'

当我使用Fiddler跟踪此请求时,我看不到原始标头随请求一起传递。 enter image description here

如何配置swashbuckle / swagger配置,以便始终使用curl请求传递Origin标头?

感谢您的帮助

0 个答案:

没有答案