我有一个应用程序已运行使用CredentialsAuthProvider()一段时间。ServiceStack Twitter身份验证和注册
今天,我想添加twitter和facebook作为人们创建帐户的选项。我有脚手架。
//Register all Authentication methods you want to enable for this web app.
Plugins.Add(new AuthFeature(() => new AuthUserSession(),
new IAuthProvider[] {
new CredentialsAuthProvider(),
new TwitterAuthProvider(appSettings),
new FacebookAuthProvider(appSettings)
}));
//Provide service for new users to register so they can login with supplied credentials.
Plugins.Add(new CustomRegistrationFeature());
端点/ API /认证/ Twitter和/ API/auth /中Facebook的工作,我看到一个用户会话访问/ API/AUTH创建一次OAuth的过程完成后无论其...
我的UserAuthRepository(OrmLiteAuthRepository)中没有创建用户。存储在会话中的用户标识无效。任何使用[Authenticate]属性装饰的方法都会导致返回404(用户未找到)错误。
我期望用户通过从Facebook或Twitter获得的First/Last/Email创建用户。我误解了什么吗?
ServiceStack v4.0.38
如果仍有问题,请尝试创建一个最小项目来突出显示问题并在此处发布链接。 – 2015-04-10 02:48:44
好吧,我会那样做。我在旅行时本周无法获得任何设置,但会尽快获得帮助。 问题的症结在于Session正在由Twitter提供程序创建,但数据库没有将用户添加到该提供程序中。 现在它只是在我的redis会话存储中创建一个ID为== 1的用户,但在我的auth仓库中创建了no用户(它应该是ID为4xxx的用户)。 – 2015-04-12 23:30:51