में उपयोगकर्ता कुकी टिकट को रीफ्रेश करें ASP.NET कोर वेब एप्लिकेशन में नियंत्रक में मैं उपयोगकर्ता को रीफ्रेश करना चाहता हूं और क्लाइंट पर संग्रहीत कुकी टिकट में दावा करना चाहता हूं।एएसपी.Net कोर पहचान
ग्राहक प्रमाणीकृत और अधिकृत है, एएसपी.नेट कोर पहचान कुकी जानकारी में इस जानकारी को स्टोर करता है - अब कुछ नियंत्रक कार्यों में मैं कुकी में डेटा रीफ्रेश करना चाहता हूं।
SignInManager
में RefreshSignInAsync
रीफ्रेश करने के लिए एक फ़ंक्शन है, लेकिन यह HttpContext.User
पैरामीटर के रूप में स्वीकार नहीं करता है।
[HttpPost("[action]")]
[Authorize]
public async Task<IActionResult> Validate()
{
// todo: update the Client Cookie
await _signInManager.RefreshSignInAsync(User); // wrong type
}
मैं कुकी को रीफ्रेश कैसे करूं?
ठीक है, 'HttpContext.User' में एक प्रिंसिपल ('दावा प्रिंसिपल' है, जिसमें पहचान और दावों)। SignInManager 'TUser' लेता है जो उपयोगकर्ता प्रकार पर निर्भर करता है जिसका उपयोग आप पहचान को कॉन्फ़िगर करने के लिए करते थे। टोकन से उपयोगकर्ता आईडी प्राप्त करें उपयोगकर्ता को प्राप्त करें और इसे रीफ्रेश करें। या तो एक्शन फ़िल्टर या एक्सटेंशन विधि या दोनों – Tseng