Я включил Поддержка сессий в стеке услуг, как:Каков наилучший способ обнаружения начала сеанса (аналогично Session_Start Global.ashx) при использовании ServiceStack SessionFeature?
container.Register<IRedisClientsManager>(c => container.Resolve<PooledRedisClientManager>());
container.Register<ICacheClient>(c => c.Resolve<IRedisClientsManager>().GetCacheClient());
container.Register<ISessionFactory>(c => new SessionFactory(c.Resolve<ICacheClient>()));
//RE: https://github.com/ServiceStack/ServiceStack/wiki/Sessions
Plugins.Add(new SessionFeature());
Я вижу, что сс-ID и сс-PIDD печенье устанавливается после посещения сайта, однако я хотел бы знать, когда начинается сеанс (т.е. первый запрос от этого пользователя), поэтому я могу захватить входящий URL-адрес реферера.
Использование традиционных сессий asp.net, я бы использовал Session_Start в Global, однако это не срабатывает для меня при использовании сеансов SS.
Есть ли способ обнаружить это событие начала сеанса при использовании ServiceStack? Я не нашел ссылки в моих запросах в Интернете или на ServiceStack Sessions wiki.
Значит, никаких событий на самом сеансе нет, только если вы используете функции аутентификации? – JesseP
Правильно, в настоящее время нет событий сеанса. Вы всегда можете реализовать свой собственный [SessionFeature] (https://github.com/ServiceStack/ServiceStack/blob/master/src/ServiceStack.ServiceInterface/SessionFeature.cs) плагин и просто использовать это вместо этого. – mythz
Звучит неплохо. Если я придумаю чистую реализацию, я отправлю запрос на перенос. Предполагая, что это то, что вы видите в наличии в плагине SessionFeature по умолчанию, правильно? – JesseP