BasicAuthentication不会在Auth.cs中调用我的OnActionExecuting - 我可能错过了什么?

我有我的控制器饰:BasicAuthentication] - 然而,投入断点,并逐句通过代码时,[BasicAuthentication]从来没有重定向到Auth.cs(在过滤器文件夹):BasicAuthentication不会在Auth.cs中调用我的OnActionExecuting - 我可能错过了什么?

过滤器\验证.cs

using System; 

using System.Collections.Generic;

using System.Linq;

using System.Security.Principal;

using System.Text;

using System.Threading;

using System.Web;

using System.Web.Security;

namespace ebapi.Filter

{

public class BasicAuthenticationAttribute : System.Web.Http.Filters.ActionFilterAttribute

{

public override void OnActionExecuting(System.Web.Http.Controllers.HttpActionContext actionContext)

{

所以重写OnActionExecuting永远不会执行 - 但我看不到我错过了什么。我的控制器,饰以[BasicAuthentication]如下所示,但不会调用上面显示我的Auth.cs:

using System; 

using System.Collections.Generic;

using System.Data;

using System.Data.Entity.Infrastructure;

using System.Linq;

using System.Net;

using System.Net.Http;

using System.Web;

using System.Web.Http;

using ebapi.Filter;

using ebapi.Models;

namespace ebapi.Controllers

{

public class GetBookingsController : ApiController

{

private GetBookingsContext db = new GetBookingsContext();

private ApiMembersContext dba = new ApiMembersContext();

// GET api/GetBookings/5

[BasicAuthentication]

public IEnumerable<GetBooking> GetBooking(long id)

{

感谢您的帮助,

马克

回答:

如果这能帮助我改变了

public class BasicAuthenticationAttribute name to: public class BasicAuthenticationV2Attribute 

,改变了装饰:

[BasicAuthenticationV2] 

无论出于何种原因,这再次启动了身份验证,并且没有任何问题。

我假设有某种缓存正在进行,可能是从调用IP到API - 这意味着它记得它已经通过了身份验证,并且不需要再次访问?

如果有人能证实我的想法,我会很感激。

谢谢

马克

以上是 BasicAuthentication不会在Auth.cs中调用我的OnActionExecuting - 我可能错过了什么? 的全部内容, 来源链接: utcz.com/qa/261526.html

回到顶部