【问题标题】:ServiceStack cant handle cookie from subdomain angular clientServiceStack 无法处理来自子域角度客户端的 cookie
【发布时间】:2015-03-15 09:59:24
【问题描述】:

我在 servicestack 捕获客户端 cookie 上有问题。 我的服务域:service.domain.com 网站(角度):www.domain.com 每个都在专用服务器上。 我在 Servicestack 4 中使用 Self-Host 方法进行开发。 这是我的请求过滤器看起来比设置线程文化的 cookie。

  this.PreRequestFilters.Add((httpReq, httpResp) =>
        {

            var lang = httpReq.GetCookieValue("Lang");
            if (!string.IsNullOrEmpty(lang))
            {
                Thread.CurrentThread.CurrentUICulture = new CultureInfo(lang);    
            }
            else
            {
                Thread.CurrentThread.CurrentUICulture = new CultureInfo("en");
                httpResp.SetCookie("Lang","en",TimeSpan.FromDays(100));

            }

        });

这是我的语言服务采用“Lang”参数。

    public class LanguageService : ServiceStack.Service
{
    public Language Any(LanguageRequest request)
    {
        this.Response.SetCookie("Lang", request.Lang, TimeSpan.FromDays(100));
        return new Language() { };
    }
}

不幸的是 prerequestfilter 在语言服务之后发现了注释。 感谢您的建议。

【问题讨论】:

    标签: angularjs cookies localization servicestack


    【解决方案1】:

    默认情况下,不同子域中的 Cookie 被视为单独的域。

    您可以尝试在每个 Cookie 上指定域:

    SetConfig(new HostConfig {
        RestrictAllCookiesToDomain = "domain.com",
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-17
      • 2018-09-23
      • 2019-01-15
      • 1970-01-01
      • 2022-11-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多