在caching per request中,给出了以下示例,其中显示了如何在express中使用数据加载器。
function createLoaders(authToken) {
return {
users: new DataLoader(ids => genUsers(authToken, ids)),
}
}
var app = express()
app.get('/', function(req, res) {
var authToken = authenticateUser(req)
var loaders = createLoaders(authToken)
res.send(renderPage(req, loaders))
})
app.listen()
我对将authToken
传递给genUsers
批量函数感到困惑。如何组合批处理函数以使用authToken
并返回每个用户相应的结果??
答案 0 :(得分:1)
示例说明genUsers
应使用当前请求的用户凭证(由其身份验证令牌标识),以确保他们只能获取他们允许查看的数据。本质上,加载器在请求开始时初始化,然后在最后被丢弃,并且永远不会在请求之间回收。