我在.NET Core 2.1中使用OAuth登录到CoinBase,我已经像这样配置了身份验证:
services.AddAuthentication(COOKIE_AUTH) .AddCookie(options => options.ExpireTimeSpan = TimeSpan.FromMinutes(60)) .AddCoinbase(options => { options.SendLimitAmount = 1; options.SendLimitCurrency = "USD"; options.SendLimitPeriod = SendLimitPeriod.day; options.ClientId = Configuration["Coinbase:ClientId"]; options.ClientSecret = Configuration["Coinbase:ClientSecret"]; COINBASE_SCOPES.ForEach(scope => options.Scope.Add(scope)); options.SaveTokens = true; options.ClaimActions.MapJsonKey("urn:coinbase:avatar", "avatar_url"); });
使用postman我看到我得到了一个访问令牌和一个刷新令牌。我的代币两小时内到期,永不刷新。
我知道我可以手动刷新令牌,但我希望在.NET中构建一些
有没有办法刷新.net中内置的令牌?
这没有意义,因为客户端负责发送一个有效的令牌以期望请求得到授权。当客户端通常发送令牌时,它们通常在头中这样做。该头只包含一个访问令牌,而不是刷新令牌。相反,刷新令牌在客户端持久化,并用于获取有效的访问令牌。然后它可以提出不同的请求,并期望得到不同的结果。流程很重要。