gpt4 book ai didi

asp.net-mvc - 使用 MVC Controller 进行 ServiceStack 身份验证

转载 作者:行者123 更新时间:2023-12-02 20:09:20 24 4
gpt4 key购买 nike

我已遵循 SocialBootstrapAPi for ServiceStack 中的示例,但我不明白重定向是如何连接的。当我进入未经身份验证的安全 Controller 时,我会被重定向回索引页面。我无法在我自己的应用程序中复制该行为。未找到此连接的位置 - 在 SocialBootstrapApi 的 web.config 中找不到它们?

我继承自ServiceStackController<AuthUserSession>并输入 [Authenticate]在我的基础 Controller 上。这是我得到的错误:

[NullReferenceException: Object reference not set to an instance of an object.]
ServiceStack.ServiceInterface.SessionExtensions.SessionAs(ICacheClient cache, IHttpRequest httpReq, IHttpResponse httpRes) +90
ServiceStack.Mvc.ServiceStackController.SessionAs() +64
ServiceStack.Mvc.ServiceStackController`1.get_UserSession() +36
ServiceStack.Mvc.ServiceStackController`1.get_AuthSession() +5
ServiceStack.Mvc.ExecuteServiceStackFiltersAttribute.OnActionExecuting(ActionExecutingContext filterContext) +97

这是我在 AppHost.cs 文件中的内容:

        //Enable Authentication
ConfigureAuth(container);

//Register In-Memory Cache provider.
//For Distributed Cache Providers Use: PooledRedisClientManager, BasicRedisClientManager or see: https://github.com/ServiceStack/ServiceStack/wiki/Caching
container.Register<ICacheClient>(new MemoryCacheClient());
container.Register<ISessionFactory>(c =>
new SessionFactory(c.Resolve<ICacheClient>()));

ConfigureAuth() 与 SocialBootstrapApi 示例类似(不完全相同,但很接近) - 我认为这里没有遗漏什么。

那么这是如何工作的呢?

最佳答案

根据 OP 的请求,将评论提升为答案:

您是否为 MVC Controller 设置了 IoC? ControllerBuilder.Current.SetControllerFactory(new FunqControllerFactory(container));

关于asp.net-mvc - 使用 MVC Controller 进行 ServiceStack 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13809519/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com