zoukankan      html  css  js  c++  java
  • 来吧学学.Net Core之登录认证与跨域资源使用

    学习core登录认证与跨域资源共享是越不过的砍,所以我在学习中同样也遇到啦这两个问题,今天我们就用示例来演示下使用下这2个技术点吧.

    本篇主要内容如下:

    1、展示一个登录认证的简单示例

    2、跨域资源访问

    3、跨域获取登录认证的用户信息

    public void ConfigureServices(IServiceCollection services)
            {
                //services.AddAuthorization();
                // Add framework services.
                services.AddMvc();
                services.AddCors(options => options.AddPolicy("AllowSameDomain", builder => builder.WithOrigins("http://a.local.com:50307", "http://b.local.com:63455")));
            }


    注意此方法只能解决各种GET/POST等请求的跨域问题,不能解决[Authorize]特性出现的问题

    .Net Core跨域访问需要登录认证的资源

    services.AddCors(options => options.AddPolicy("AllowSameDomain", builder => builder.WithOrigins("http://a.local.com:50307", "http://b.local.com:63455").AllowCredentials()));

    重点是

    .AllowCredentials()
    加上这个才能返回[Authorize]特性出现的未授权出现的跨域问题

    若要允许所有请求响应标头,请调用AllowAnyHeader方法

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddCors(options =>
        {
            options.AddPolicy(name: MyAllowSpecificOrigins,
                              builder =>
                              {
                                  builder.WithOrigins("http://www.test.com")
                                         .AllowAnyHeader();
                                  });
            });
            //user code ……
        }

    此问题解决!

    参考

    https://www.cnblogs.com/knowledgesea/p/7084419.html

     https://www.jianshu.com/p/c8ed4bb54351

    世界再大也有尽头!
  • 相关阅读:
    试题 历届试题 整数拼接(数位dp)
    试题 历届试题 波动数列(dp)
    序列化二叉树(模拟)
    对于maven中无法加载类路径下的配置文件
    [蓝桥杯][算法训练]文章翻转
    [蓝桥杯][算法训练] 无权最长链
    [蓝桥杯][基础训练]2n皇后问题
    蓝桥杯 基础练习——Huffuman树
    蓝桥杯 基础练习——高精度加法
    蓝桥杯 基础练习——阶乘计算
  • 原文地址:https://www.cnblogs.com/shijiehaiyang/p/14853261.html
Copyright © 2011-2022 走看看