Asp.net web api 如何在每次请求后延长令牌过期日期(我使用WebApi承载令牌)

Asp.net web api 如何在每次请求后延长令牌过期日期(我使用WebApi承载令牌),asp.net-web-api,oauth,access-token,Asp.net Web Api,Oauth,Access Token,问题是: 我有默认ASP身份的ASP WebApi 2(承载者) 客户端平台-Ios、Android、WinPhone和Web Ios、Android和WinPhone的过期日期必须为1年,但Web的过期日期必须为5分钟,每次用户活动后,过期日期必须延长 每个请求可以包含PlatformType(或其他信息) 如何在每次用户活动后延长令牌过期日期?当主令牌过期时,应使用刷新令牌。此刷新令牌的过期日期可以是许多天,由您选择 RefreshTokenProvider=新的Authenticati

问题是:

  • 我有默认ASP身份的ASP WebApi 2(承载者)
  • 客户端平台-Ios、Android、WinPhone和Web
Ios、Android和WinPhone的过期日期必须为1年,但Web的过期日期必须为5分钟,每次用户活动后,过期日期必须延长

每个请求可以包含PlatformType(或其他信息)


如何在每次用户活动后延长令牌过期日期?

当主令牌过期时,应使用刷新令牌。此刷新令牌的过期日期可以是许多天,由您选择

RefreshTokenProvider=新的AuthenticationTokenProvider()
{
OnCreate=(obj)=>
{
obj.Ticket.Properties.ExpiresUtc=DateTime.UtcNow.AddMonths(6);
obj.SetToken(obj.SerializeTicket());
},
OnReceive=(obj)=>{obj.DeserializeTicket(obj.Token);}
},

您目前是如何创建令牌的?像这样-很抱歉,即使在用户执行活动时,令牌也不会延长,当用户提交示例请求时,令牌将过期!我不想将
expiresUtc
设置为超过一分钟。当令牌过期时,您需要创建一个新的令牌,其“grant\u type”=“refresh\u token”和生成第一个令牌时给出的“refresh\u token”。该令牌是短期的,例如,刷新令牌可能持续2周。