在将Web应用程序部署为Azure API应用程序时,它会向响应中添加一个额外的Access-Control-Allow-Origin:*标头。如何覆盖和删除它?
我的项目使用SignalR和OWIN,当我通过我自己的代码中的请求或设置添加或更改Access-Control-Allow-Origin时,我得指定另一个Access-Control-Allow-Origin标头属性,但是总是添加额外的通配符(*)标题。
这使我对SignalR的请求失败,因为它包含在origin为*时不允许的身份验证标头。
API应用程序托管在“API应用程序主机”后面,我认为这是此附加标头的来源。有什么方法可以修改这种行为吗?
注意:部署为常规Azure Web App时,附加标头不存在。
答案 0 :(得分:0)
这可能是因为除了在后端启用了CORS之外,您还设置了MS_CrossDomainOrigins应用程序设置。如果是这样,请删除其中一个。
感谢。
答案 1 :(得分:0)
注意你的web.config中没有设置如下:
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
</customHeaders>
删除它(如果存在)。