你可以通过以下方式在ASP.NET Core中获取cookies并获取wxOpenId:\n\n1. 首先,确保你已经在Startup.cs文件中启用了cookies中间件。在ConfigureServices方法中添加以下代码:\n\ncsharp\nservices.Configure<CookiePolicyOptions>(options =>\n{\n options.CheckConsentNeeded = context => true;\n options.MinimumSameSitePolicy = SameSiteMode.None;\n});\n\nservices.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)\n .AddCookie(options =>\n {\n options.Cookie.Name = "wxOpenId";\n options.Cookie.SameSite = SameSiteMode.None;\n options.Events = new CookieAuthenticationEvents\n {\n OnRedirectToLogin = redirectContext =>\n {\n redirectContext.Response.StatusCode = 404;\n return Task.CompletedTask;\n }\n };\n });\n\n\n2. 在Configure方法中添加以下代码以启用cookie中间件:\n\ncsharp\napp.UseCookiePolicy();\napp.UseAuthentication();\n\n\n3. 然后,你可以在控制器中通过以下方式获取wxOpenId的cookie值,并在没有wxOpenId时返回404响应:\n\ncsharp\npublic IActionResult GetWxOpenId()\n{\n string wxOpenId = HttpContext.Request.Cookies["wxOpenId"];\n\n if (string.IsNullOrEmpty(wxOpenId))\n {\n return NotFound();\n }\n\n // 执行其他操作\n\n return Ok();\n}\n\n\n这样,当没有wxOpenId时,将返回404响应。


原文地址: https://www.cveoy.top/t/topic/pvNo 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录