ASP.NET Core 跨域

跨域常见问题:

1.发布到IIS上后跨域问题

  解决方法

    修改web.config文件

    <system.webServer>
        <httpProtocol>
            <customHeaders>
                <add name="Access-Control-Allow-Methods" value="GET,POST,PUT,DELETE,OPTIONS" />
                <add name="Access-Control-Allow-Headers" value="content-type,signsvalue,timestamp,authorization" />
                <add name="Access-Control-Allow-Credentials" value="true" />
                <add name="Access-Control-Allow-Origin" value="http://81.70.41.226:8019" />
            </customHeaders>
        </httpProtocol>
    </system.webServer>

2.后台页面自己开发,接口也是自己开发的情况下,需要调试,那么本地页面请求本地接口就有跨域问题了,这种问题怎么解决

  解决方法

    从网上查看的常用方法,在ConfigureServices方法中添加代码,注意这样有可能不管用,需要一点点尝试,下面这三种都可以挨个试试,本人亲测。

            services.AddCors(options =>
            {
                options.AddPolicy("AllowSpecificOrigins",
                    builder =>
                    {
                        builder.WithOrigins("http://localhost:9527").AllowAnyHeader().AllowCredentials().AllowAnyMethod();
                    });
            });       

            services.AddCors(options =>
            {
                options.AddPolicy("AllowSpecificOrigins",
                    builder =>
                    {
                        builder.WithOrigins("http://localhost:9527").AllowAnyHeader().AllowCredentials();
                    });
            });

            services.AddCors(options =>
            {
                options.AddPolicy("AllowSpecificOrigins",
                    builder =>
                    {
                        builder.WithOrigins("http://localhost:9527").AllowAnyHeader();
                    });
            });

    在Configure方法中添加代码

 app.UseCors("AllowSpecificOrigins");

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。