[server]: Add pagination handling to return_all_data
This commit is contained in:
@ -7,9 +7,15 @@ table = dynamodb.Table(os.environ['TABLE_NAME'])
|
|||||||
|
|
||||||
def lambda_handler(event, context):
|
def lambda_handler(event, context):
|
||||||
try:
|
try:
|
||||||
|
items = []
|
||||||
response = table.scan()
|
response = table.scan()
|
||||||
|
|
||||||
items = response.get('Items', [])
|
items.extend(response.get('Items', []))
|
||||||
|
|
||||||
|
# continue to scan while there are more pages
|
||||||
|
while 'LastEvaluatedKey' in response:
|
||||||
|
response = table.scan(ExclusiveStartKey=response['LastEvaluatedKey'])
|
||||||
|
items.extend(response.get('Items', []))
|
||||||
|
|
||||||
if 'queryStringParameters' in event and event['queryStringParameters'] and 'objectType' in event['queryStringParameters']:
|
if 'queryStringParameters' in event and event['queryStringParameters'] and 'objectType' in event['queryStringParameters']:
|
||||||
objectType = event['queryStringParameters']['objectType']
|
objectType = event['queryStringParameters']['objectType']
|
||||||
|
Reference in New Issue
Block a user