首页 > 解决方案 > 如何将不同来源添加到 asp.net 选项标头

问题描述

我正在使用 cors 如何为 asp.net 中的选项启用因来源而异?所以选项将有变化:原点标题。这是我正在使用的代码

            services.AddCors(options =>
            {
                options.AddPolicy(Origins,
                builder =>
                {
                    builder.SetIsOriginAllowed(origin => ListOfOrigin(origin))
                           .AllowAnyHeader()
                           .AllowAnyMethod()
                           .AllowCredentials()
                           .SetPreflightMaxAge(TimeSpan.FromMinutes(1));
                });
            });

标签: c#asp.netasp.net-coreweb

解决方案


根据资源实施

希望使自己能够与多个 Origin 共享但不以“*”统一响应的资源实际上必须动态生成 Access-Control-Allow-Origin 标头以响应他们希望允许的每个请求。因此,此类资源的作者应发送 Vary: Origin HTTP 标头或提供其他适当的控制指令以防止缓存此类响应,如果跨域重复使用可能会不准确。

如果请求可能包含Access-Control-Allow-Origin具有不同值的 a,则 CDN 应始终以 响应Vary: Origin,即使对于没有Access-Control-Allow-Origin标头的响应也是如此。

如果请求者未在其请求中提供 Origin 标头,或者未提供不是允许值之一的 Origin 值,则响应中不包含Vary: Origin


推荐阅读