Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用LastEvaluatedKey在dynamoDB中进行反向分页?_Javascript_Node.js_Amazon Dynamodb_Dynamodb Queries_Dynamo Local - Fatal编程技术网

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