Bird
Raised Fist0
GCPcloud~10 mins

HTTP triggered functions in GCP - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to define an HTTP triggered Cloud Function in Python.

GCP
def hello_world(request):
    return [1]('Hello, World!')
Drag options to blanks, or click blank then click option'
AResponse
Bstr
Cmake_response
Dprint
Attempts:
3 left
💡 Hint
Common Mistakes
Using print instead of returning a response
Returning a plain string without wrapping in a response
2fill in blank
medium

Complete the code to extract a query parameter named 'name' from the HTTP request.

GCP
def greet(request):
    name = request.args.get([1], 'Guest')
    return f'Hello, {name}!'
Drag options to blanks, or click blank then click option'
A'user'
B'name'
C'id'
D'guest'
Attempts:
3 left
💡 Hint
Common Mistakes
Using the wrong parameter name
Forgetting to provide a default value
3fill in blank
hard

Fix the error in the code to correctly handle JSON data from the HTTP POST request.

GCP
def process_json(request):
    data = request.[1]
    return f"Received: {data['message']}"
Drag options to blanks, or click blank then click option'
Aget_json
Bjson
Cjson_data
Djson()
Attempts:
3 left
💡 Hint
Common Mistakes
Calling get_json() on request.json which is already parsed
Using incorrect attribute names
4fill in blank
hard

Fill both blanks to create a Cloud Function that returns a JSON response with a status code 200.

GCP
from flask import jsonify, make_response

def json_response(request):
    data = {'message': 'Success'}
    response = make_response([1](data), [2])
    return response
Drag options to blanks, or click blank then click option'
Ajsonify
B404
C200
Djson
Attempts:
3 left
💡 Hint
Common Mistakes
Using wrong status code
Not converting data to JSON properly
5fill in blank
hard

Fill all three blanks to create a Cloud Function that reads a JSON field 'name', returns a greeting, and sets content type.

GCP
from flask import make_response, jsonify

def greet_user(request):
    data = request.[1]
    name = data.get([2], 'Guest')
    response = make_response(jsonify({'greeting': f'Hello, {name}!'}))
    response.headers['[3]'] = 'application/json'
    return response
Drag options to blanks, or click blank then click option'
Ajson
B'name'
CContent-Type
Dargs
Attempts:
3 left
💡 Hint
Common Mistakes
Using request.args instead of request.json
Forgetting to set the content type header
Using wrong key names

Practice

(1/5)
1. What happens when an HTTP triggered function in GCP receives a web request?
easy
A. The function only logs the request but does not respond.
B. The function stores the request without running any code.
C. The function runs the code and sends back a response.
D. The function waits for a manual trigger to run.

Solution

  1. Step 1: Understand the trigger type

    HTTP triggered functions run automatically when they receive a web request.
  2. Step 2: Identify the function behavior

    They process the request and return a response to the caller.
  3. Final Answer:

    The function runs the code and sends back a response. -> Option C
  4. Quick Check:

    HTTP trigger = runs code + responds [OK]
Hint: HTTP trigger means code runs on web request [OK]
Common Mistakes:
  • Thinking the function only logs requests
  • Assuming manual trigger is needed
  • Believing the function stores requests without running
2. Which of the following is the correct way to define an HTTP triggered function in Python for GCP Cloud Functions?
easy
A. def my_function(data, context):
B. def my_function(event, context):
C. def my_function():
D. def my_function(request):

Solution

  1. Step 1: Recall function signature for HTTP triggers

    HTTP triggered functions accept a single 'request' parameter representing the web request.
  2. Step 2: Match the correct signature

    Only 'def my_function(request):' matches this pattern.
  3. Final Answer:

    def my_function(request): -> Option D
  4. Quick Check:

    HTTP function signature = def func(request) [OK]
Hint: HTTP functions take one 'request' parameter [OK]
Common Mistakes:
  • Using event and context parameters (for background triggers)
  • Defining function without parameters
  • Using wrong parameter names
3. Given this Python HTTP function code snippet, what will be the HTTP response body when a GET request is made?
def hello_world(request):
    if request.method == 'GET':
        return 'Hello, World!'
    else:
        return 'Unsupported method', 405
medium
A. "Hello, World!"
B. "Unsupported method"
C. Error: Missing return statement
D. Empty response

Solution

  1. Step 1: Check the request method

    The function checks if the request method is 'GET'.
  2. Step 2: Determine response for GET

    For 'GET', it returns the string 'Hello, World!'.
  3. Final Answer:

    "Hello, World!" -> Option A
  4. Quick Check:

    GET request returns greeting [OK]
Hint: GET request returns 'Hello, World!' string [OK]
Common Mistakes:
  • Confusing method names case sensitivity
  • Expecting a JSON response without formatting
  • Ignoring else branch
4. Identify the error in this HTTP triggered function code snippet:
def process_request(request):
    if request.method == 'POST'
        return 'Received POST'
    else:
        return 'Only POST allowed', 405
medium
A. Missing colon ':' after if statement
B. Incorrect return type for HTTP function
C. Wrong parameter name for request
D. No error in the code

Solution

  1. Step 1: Check syntax of if statement

    The if statement is missing a colon ':' at the end.
  2. Step 2: Confirm syntax error impact

    Without the colon, the code will cause a syntax error and fail to deploy.
  3. Final Answer:

    Missing colon ':' after if statement -> Option A
  4. Quick Check:

    if statement needs ':' [OK]
Hint: Check colons after if statements [OK]
Common Mistakes:
  • Ignoring syntax errors
  • Assuming return types are wrong
  • Confusing parameter names
5. You want to create an HTTP triggered function that accepts JSON data in a POST request and returns the value of the 'name' field. Which code snippet correctly handles this in Python?
hard
A. def get_name(request): data = request.get_json() return f"Hello, {data.name}!"
B. def get_name(request): data = request.get_json() return f"Hello, {data['name']}!"
C. def get_name(request): data = request.get_json return f"Hello, {data['name']}!"
D. def get_name(request): data = request.json() return f"Hello, {data.name}!"

Solution

  1. Step 1: Use correct method to parse JSON

    request.get_json() is the correct method to parse JSON body in GCP HTTP functions.
  2. Step 2: Access JSON data correctly

    JSON data is a dictionary, so access fields with data['name'], not data.name.
  3. Final Answer:

    def get_name(request): data = request.get_json() return f"Hello, {data['name']}!" -> Option B
  4. Quick Check:

    Use get_json() and dict access [OK]
Hint: Use get_json() and dict keys for JSON data [OK]
Common Mistakes:
  • Using request.json() instead of get_json()
  • Accessing JSON fields with dot notation
  • Forgetting parentheses on get_json
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard