使用ServiceStack 4.5.14进行身份验证

时间:2018-01-30 23:42:39

标签: c# authentication servicestack

我正在使用SocialBootstrap API示例(使用ServiceStack 4.5.14)并尝试使身份验证正常工作。注册工作正常,用户帐户在数据库中创建没有任何问题,但当我尝试使用新创建的用户登录时,我得到"无效的用户名或密码"。当我单步执行代码时,正在传递正确的用户名和密码。我的注册代码如下:

Observable.defer

它命中验证方法,然后转到:

let source = someFunction(); // [1,2,3,4,5,6,7,8,9,...]

// On page load
source.take(3).subscribe(item => render(item)); // [1,2,3]

// When user clicks "next page"
source.take(3).subscribe(item => render(item)); // [1,2,3], expected [4,5,6]
AppHost.cs中的

。在此之后它会抛出"无效的用户名或密码错误"。 我无法弄清楚为什么它不会进行身份验证。除了使用SQL Server而不是Postgres之外,代码与示例基本相同。我知道我的SQL连接正常工作,连接字符串正常,因为注册工作完美无瑕。我只是不知道我还能做些什么来使登录工作。任何人都可以了解我做错了什么或其他什么我可以尝试找到我的错误?

1 个答案:

答案 0 :(得分:1)

我刚试过SocialBootstrapApi项目。安装了ServiceStack.OrmLite.SqlServer包,将OrmLiteConnectionFactory替换为使用SQL Server:

container.Register<IDbConnectionFactory>(
    new OrmLiteConnectionFactory(connString, SqlServerDialect.Provider)
    {
        ConnectionFilter = x => new ProfiledDbConnection(x, Profiler.Current)
    });

然后能够注册一个新用户,邮件test@gmail.com和密码test直接登录:

enter image description here

注销和登录也可以按预期工作。