【发布时间】:2014-10-16 23:10:47
【问题描述】:
我正在构建一个带有本地身份验证的 ASP.net MVC Web 应用程序。我想添加一些 Web API 端点,不是供外部使用,而是纯粹供我自己页面上的 jQuery AJAX 调用使用。所以我添加了一个 Web API 控制器。
为了集成身份验证,我可以这样做:
[Authorize]
public IQueryable<object> GetLabels(int ModuleId)
{
return db.Labels.Select(x => new { ID = x.ID, Name = x.Name, ModuleID = x.ModuleId }).Where(x => x.ModuleID == ModuleId );
}
这提供了所需的行为。但是,我遇到了一个问题:当以注销用户身份访问 API 时,它会以登录页面的 HTML 响应进行响应。
我宁愿用一个小的 JSON 对象进行响应,给出错误或 401 错误。我该如何改变这种行为?
【问题讨论】:
标签: c# asp.net asp.net-mvc authentication asp.net-web-api