Types 使用JwtSessionHandler-dart时出现类型错误
我在使用JwtSessionHandler时遇到了dart类型的问题。我想使用git存储库中的示例应用程序作为指南来集成用户身份验证和会话 不幸的是,我在运行应用程序时出错(在运行应用程序之前未检测到语法错误) 错误消息如下所示:Types 使用JwtSessionHandler-dart时出现类型错误,types,dart,jwt,Types,Dart,Jwt,我在使用JwtSessionHandler时遇到了dart类型的问题。我想使用git存储库中的示例应用程序作为指南来集成用户身份验证和会话 不幸的是,我在运行应用程序时出错(在运行应用程序之前未检测到语法错误) 错误消息如下所示: Breaking on exception: object of type _TypeError: type '(String, String) => Future<UserLookupByUsernamePassword<Principal>
Breaking on exception: object of type _TypeError: type '(String, String) => Future<UserLookupByUsernamePassword<Principal>>' is not a subtype of type 'UserLookupByUsernamePassword' of 'userLookup'.
从JwtSessionHandler
testLookup.lookupyusernamespassword
testLookup
由var testLookup=new TestUserLookup()定义代码>
在哪里
类TestUserLookup{
Future lookupByUsernamePassword(字符串用户名、字符串密码){
最终validUser=用户名=='fred';
final principalot=validUser?新的一些(新的主体(用户名)):const None();
返回新的未来值(principalOpt);
}
Future LookupBySerName(字符串用户名){
最终validUser=用户名=='fred';
final principalot=validUser?新的一些(新的主体(用户名)):const None();
返回新的未来值(principalOpt);
}
}
因此,这部分代码与示例中的代码完全相同。我试图将选项
部分更改为userlookupyusername
,但过了一会儿我就卡住了。我的应用程序的全部代码都可以找到。错误发生在中
非常感谢您的帮助。之所以出现这种情况,是因为JwtSessionHandler
希望lookupyusername
函数只有一个参数,而不是有两个参数的lookupyusernamepassword
var sessionHandler = new JwtSessionHandler('super app',new Uuid().v4(),testLookup.lookupByUsernamePassword);
class TestUserLookup {
Future<Option<Principal>> lookupByUsernamePassword(String username, String password) {
final validUser = username == 'fred';
final principalOpt = validUser ? new Some(new Principal(username)) : const None();
return new Future.value(principalOpt);
}
Future<Option<Principal>> lookupByUsername(String username) {
final validUser = username == 'fred';
final principalOpt = validUser ? new Some(new Principal(username)) : const None();
return new Future.value(principalOpt);
}
}