Dart 导水管-如何在我的后端保存没有用户ID的客户端数据
当我不知道用户的用户ID时,如何为用户保存数据?我想把它保存在我的渡槽后端,这样我就可以保护和查询当前的用户数据了Dart 导水管-如何在我的后端保存没有用户ID的客户端数据,dart,aqueduct,Dart,Aqueduct,当我不知道用户的用户ID时,如何为用户保存数据?我想把它保存在我的渡槽后端,这样我就可以保护和查询当前的用户数据了 @Operation.post() Future<Response> addData(@Bind.body(ignore: ['id']) Data newData) async { final query = Query<Data>(context)..values = newData; final insertData = await query
@Operation.post()
Future<Response> addData(@Bind.body(ignore: ['id']) Data newData) async {
final query = Query<Data>(context)..values = newData;
final insertData = await query.insert();
return Response.ok(insertData);
}
@Operation.post()
Future addData(@Bind.body(忽略:['id'])Data newData)异步{
最终查询=查询(上下文)…值=新数据;
final insertData=wait query.insert();
返回Response.ok(insertData);
}
创建新用户时,Aqueduct会自动生成用户ID。该id与用户的登录凭据或访问令牌相关联
在这里的示例中,用户在数据模型中传递了一些数据:
@Operation.post()
Future<Response> addData(@Bind.body(ignore: ['id']) Data newData) async {
final query = Query<Data>(context)..values = newData;
final insertData = await query.insert();
return Response.ok(insertData);
}
所以你可以这样使用它:
final userID = request.authorization.ownerID;
@Operation.post()
Future<Response> addData(@Bind.body(ignore: ['id']) Data newData) async {
final userID = request.authorization.ownerID;
final query = Query<Data>(context)
..values.id = userId
..values.something = newData.something
..values.another = newData.another;
final insertData = await query.insert();
// if insert was successful then...
return Response.ok(insertData);
}
@Operation.post()
Future addData(@Bind.body(忽略:['id'])Data newData)异步{
最终用户ID=request.authorization.ownerID;
最终查询=查询(上下文)
..values.id=用户id
…values.something=newData.something
..values.other=newData.other;
final insertData=wait query.insert();
//如果插入成功,那么。。。
返回Response.ok(insertData);
}
顺便说一句,由于您将插入的数据返回给用户,因此它将包含userId 非常感谢你的回答。。这真的很有帮助,我真的很感激。。我从一开始就有问题,无法理解
请求
语句来自何处,因此我没有考虑以这种方式获取用户id。。。您能否解释一下request
语句来自何处?@delmin您的控制器扩展了ResourceController
,并且request
是该类的成员变量。