在请求中的启动中设置cookie(区域性)

时间:2019-07-18 16:04:40

标签: c# asp.net-core cookies asp.net-core-webapi

我需要在请求之前设置cookie,但是我不能。在我的启动中,我有以下代码:

            app.Run(async context => {
                var currentCulture = context.Request.Cookies[".AspNetCore.Culture"];
                if (!string.IsNullOrEmpty(currentCulture) && currentCulture.Length >= 4)
                {
                    currentCulture = currentCulture.Substring(2, 2);
                }
                else
                {
                    currentCulture = "es";
                }

                context.Response.Cookies.Append(
                            CookieRequestCultureProvider.DefaultCookieName,
                            CookieRequestCultureProvider.MakeCookieValue(new RequestCulture(currentCulture)),
                            new CookieOptions { Expires = DateTimeOffset.UtcNow.AddYears(1) }
                        );
            });

我想做的是,如果区域性在到达EndPoint之前变为null,则默认提供此值。

当我尝试从前端调试该代码时,我在该代码的开头放置了一点,但它没有停止。我做错了,因为该代码甚至都无法执行。

0 个答案:

没有答案