5pence
5pence

Reputation: 175

AWS / Python Lambda function checking if a query string is present

Within my lambda function, which takes in event api query strings, I want to check if one is present. The below works if it is:

if event['queryStringParameters']['order'] == 'desc':
        file_names.append('hello')

I have tried event['queryStringParameters']['order'] != null but if there is no order query string used the lambda function the function breaks causing a 502 response. How do I check if a query string is not used without it breaking?

Upvotes: 9

Views: 6978

Answers (2)

devplayer
devplayer

Reputation: 666

I successfully use the dictionary.get method as in:

event['queryStringParameters'].get('param1')

or with a default value:

event['queryStringParameters'].get('param1', '')

Check out the syntax: https://www.w3schools.com/python/ref_dictionary_get.asp

Upvotes: 3

John Hanley
John Hanley

Reputation: 81434

Always check if the dict contains an key before referencing it.

if 'queryStringParameters' in event and 'order' in event['queryStringParameters']:

Upvotes: 15

Related Questions