C# 从回调方法访问时,HttpContextAccessor Cookie为空
我在我的网站上使用Stripe作为付款方式 当用户登录时,我将用户的访问和id令牌存储在httpContextAccessor.HttpContext.Request.Cookies中 这一切都很好,我可以在我注入IHttpContextAccessor实例的任何页面上访问令牌 当用户付款时,我为回调设置了一个控制器来处理付款状态。我需要访问存储在Cookie中的ID,但它们为空 我的问题是,我需要做什么才能在回调函数中访问登录用户cookie 以下是我在其他页面上获取cookie信息的方式:C# 从回调方法访问时,HttpContextAccessor Cookie为空,c#,.net-core,httpcontext,C#,.net Core,Httpcontext,我在我的网站上使用Stripe作为付款方式 当用户登录时,我将用户的访问和id令牌存储在httpContextAccessor.HttpContext.Request.Cookies中 这一切都很好,我可以在我注入IHttpContextAccessor实例的任何页面上访问令牌 当用户付款时,我为回调设置了一个控制器来处理付款状态。我需要访问存储在Cookie中的ID,但它们为空 我的问题是,我需要做什么才能在回调函数中访问登录用户cookie 以下是我在其他页面上获取cookie信息的方式:
private IHttpContextAccessor _httpContextAccessor;
public StripeWebHook(IHttpContextAccessor httpContextAccessor)
{
_httpContextAccessor = httpContextAccessor;
}
var id_Token = _httpContextAccessor.HttpContext.Request.Cookies["id_token"];
你没有,它们是请求:
HttpContext.Request.Cookies
Cookies。Cookie保存在客户端(浏览器)而不是服务器端,并随每个请求一起传输
第一个问题是,为什么您需要回调上的访问和id令牌
如果您出于某种原因确实这样做,以下场景就足够了:
请记住,在回调发生时,用户可能已经注销/撤销/刷新了访问令牌。我不确定自己是否理解该体系结构。在你的问题中,哪两方在用“回调方法”进行沟通,以及沟通的方向是什么?是由Stripe发起并由您的web服务(例如webhook)处理的流量通知您状态吗?或者您指的是从最终用户的浏览器到您的web服务的AJAX调用,以请求最新状态?Stripe通知webhook支付状态。我需要在成功付款后调用API,我需要在用户登录时存储ID。谢谢。我需要这样做,因为我需要在成功付款时使用令牌调用API。