weixin_39017744 2019-05-12 17:16 采纳率: 90.3%
浏览 514
已采纳

ASP.NET Web API自带的身份验证怎么能通过?

新建项目时选择个人身份验证,添加model后创建Web API2 controller using Entity Framework.生成Controller后添加身份验证,代码如下:

[Authorize]
        // GET: api/Information
        public IQueryable<Information> GetInformations()
        {
            return db.Informations;
        }

用postman发送请求获取信息,选择basic auth,输入已经注册好的username和password并发送。得到回复:"Message": "Authorization has been denied for this request."
请问是哪里做错了吗?
测试post,设置Name默认值为用户ID,只上传Detail的数据。添加用户名和密码并发送post请求,结果无法获取用户ID。
图片说明

  • 写回答

3条回答 默认 最新

  • roczj 2019-05-13 10:08
    关注

    首先 ASP.NET 默认不支持 Http Basic Auth,默认支持 Cookie Authentication(ASP.NET Core 基于CookieAuthenticationMiddleware)。
    所以你是否使用的相应的第三方 Basic Auth 并启用或者自己已经写了 Basic Auth 相关的认证模块。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?