Javascript 如何使用LastEvaluatedKey在dynamoDB中进行反向分页?
我可以用这段代码进行正向分页,但我如何才能返回?更改Javascript 如何使用LastEvaluatedKey在dynamoDB中进行反向分页?,javascript,node.js,amazon-dynamodb,dynamodb-queries,dynamo-local,Javascript,Node.js,Amazon Dynamodb,Dynamodb Queries,Dynamo Local,我可以用这段代码进行正向分页,但我如何才能返回?更改 param.FilterExpression = "#black_listed = :black_listed_val"; param.Limit = 5 param.ExpressionAttributeValues = {":black_listed_val": body.blacklisted}; param.ExpressionAttributeNames = {"#black_listed": "black_list
param.FilterExpression = "#black_listed = :black_listed_val";
param.Limit = 5
param.ExpressionAttributeValues = {":black_listed_val": body.blacklisted};
param.ExpressionAttributeNames = {"#black_listed": "black_listed"}
param.ScanIndexForward = true
param.ExclusiveStartKey = {"id": "11931258-b582-4d2d-98d9-aa8ae0fe2e43"}
到
改变
param.FilterExpression = "#black_listed = :black_listed_val";
param.Limit = 5
param.ExpressionAttributeValues = {":black_listed_val": body.blacklisted};
param.ExpressionAttributeNames = {"#black_listed": "black_listed"}
param.ScanIndexForward = true
param.ExclusiveStartKey = {"id": "11931258-b582-4d2d-98d9-aa8ae0fe2e43"}
到
要向后翻页,您需要将
ScanIndexForward
设置为false
,并将ExclusiveStartKey
设置为第二个页面的第一个项的键。例如,假设您的第一页是项目1、2和3。来自的响应将包括一个LastEvaluatedKey
3。您可以通过将其传递到ExclusiveStartKey
来使用它,从而得到4、5和6。向后走不能这样做,因为使用相同的键只会导致2&1。相反,您需要使用4键作为ExclusiveStartKey
向后翻页,您需要将ScanIndexForward
设置为false
,并将ExclusiveStartKey
设置为第二页面的第一项的键。例如,假设您的第一页是项目1、2和3。来自的响应将包括一个LastEvaluatedKey
3。您可以通过将其传递到ExclusiveStartKey
来使用它,从而得到4、5和6。向后走不能这样做,因为使用相同的键只会导致2&1。相反,您需要使用4键作为您的ExclusiveStartKey
我尝试了相同的查询,其中ScanIndexForward=true和ScanIndexForward=false。但是它返回的数据是相同的,并且顺序相同。我尝试了相同的查询,ScanIndexForward=true和ScanIndexForward=false。但是它返回的数据是相同的,并且顺序相同。
param.ScanIndexForward = false