Hướng dẫn python lambda api gateway example - Ví dụ về cổng python lambda api

Trong hướng dẫn này, bạn sử dụng cổng API Amazon để tạo API REST và tài nguyên (DynamoDBManager). Bạn xác định một phương thức (POST) trên tài nguyên và tạo hàm Lambda (LambdaFunctionOverHttps) ủng hộ phương thức POST. Bằng cách đó, khi bạn gọi API thông qua điểm cuối HTTPS, cổng API sẽ gọi hàm Lambda.

Phương thức POST mà bạn xác định trên tài nguyên DynamoDBManager hỗ trợ các hoạt động của Amazon DynamoDB sau:

  • Tạo, cập nhật và xóa một mục.

  • Đọc một mục.

  • Quét một mục.

  • Các hoạt động khác (Echo, Ping), không liên quan đến DynamoDB, mà bạn có thể sử dụng để thử nghiệm.

Sử dụng Gateway API với Lambda cũng cung cấp các khả năng nâng cao, chẳng hạn như:

  • Yêu cầu đầy đủ - Sử dụng loại tích hợp proxy Lambda (

    aws-cli/2.0.57 Python/3.7.4 Darwin/19.6.0 exe/x86_64
    3), hàm Lambda có thể nhận toàn bộ yêu cầu HTTP (thay vì chỉ là thân yêu cầu) và đặt phản hồi HTTP (thay vì chỉ là thân phản hồi). – Using the Lambda proxy (
    aws-cli/2.0.57 Python/3.7.4 Darwin/19.6.0 exe/x86_64
    3) integration type, a Lambda function can receive an entire HTTP request (instead of just the request body) and set the HTTP response (instead of just the response body).

  • Các phương thức bắt tất cả-Sử dụng phương thức bắt

    aws-cli/2.0.57 Python/3.7.4 Darwin/19.6.0 exe/x86_64
    4, bạn có thể ánh xạ tất cả các phương thức của tài nguyên API cho một hàm Lambda duy nhất với một ánh xạ duy nhất. – Using the
    aws-cli/2.0.57 Python/3.7.4 Darwin/19.6.0 exe/x86_64
    4 catch-all method, you can map all methods of an API resource to a single Lambda function with a single mapping.

  • Tài nguyên bắt tất cả-Sử dụng biến đường dẫn tham lam (

    aws-cli/2.0.57 Python/3.7.4 Darwin/19.6.0 exe/x86_64
    5), bạn có thể ánh xạ tất cả các đường dẫn phụ của tài nguyên vào hàm Lambda mà không có bất kỳ cấu hình bổ sung nào. – Using a greedy path variable (
    aws-cli/2.0.57 Python/3.7.4 Darwin/19.6.0 exe/x86_64
    5), you can map all sub-paths of a resource to a Lambda function without any additional configuration.

Để biết thêm thông tin về các tính năng API Gateway này, hãy xem Thiết lập tích hợp proxy với tài nguyên proxy trong Hướng dẫn nhà phát triển API Gateway.

Phần

  • Điều kiện tiên quyết
  • Tạo vai trò thực thi
  • Tạo chức năng
  • Kiểm tra chức năng
  • Tạo API REST bằng cổng API
  • Tạo bảng DynamoDB
  • Kiểm tra thiết lập
  • Làm sạch tài nguyên của bạn

Điều kiện tiên quyết

Tạo vai trò thực thi

Tạo chức năng

aws --version

Kiểm tra chức năng

aws-cli/2.0.57 Python/3.7.4 Darwin/19.6.0 exe/x86_64

Tạo API REST bằng cổng API

Tạo bảng DynamoDBinstall the Windows Subsystem for Linux to get a Windows-integrated version of Ubuntu and Bash.

Tạo vai trò thực thi

Tạo chức năng

Kiểm tra chức năng

  1. Tạo API REST bằng cổng APIPolicies page of the IAM console.

  2. Tạo bảng DynamoDBCreate Policy.

  3. Kiểm tra thiết lậpJSON tab, and then paste the following custom policy into the JSON editor.

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "Stmt1428341300017",
          "Action": [
            "dynamodb:DeleteItem",
            "dynamodb:GetItem",
            "dynamodb:PutItem",
            "dynamodb:Query",
            "dynamodb:Scan",
            "dynamodb:UpdateItem"
          ],
          "Effect": "Allow",
          "Resource": "*"
        },
        {
          "Sid": "",
          "Resource": "*",
          "Action": [
            "logs:CreateLogGroup",
            "logs:CreateLogStream",
            "logs:PutLogEvents"
          ],
          "Effect": "Allow"
        }
      ]
    }

    Làm sạch tài nguyên của bạn

  4. Hướng dẫn này giả định rằng bạn có một số kiến ​​thức về các hoạt động Lambda cơ bản và bảng điều khiển Lambda. Nếu bạn chưa có, hãy làm theo các hướng dẫn trong việc tạo chức năng Lambda với bảng điều khiển để tạo chức năng Lambda đầu tiên của bạn.Next: Tags.

  5. Để hoàn thành các bước sau, bạn cần một thiết bị đầu cuối dòng lệnh hoặc shell để chạy các lệnh. Các lệnh và đầu ra dự kiến ​​được liệt kê trong các khối riêng biệt:Next: Review.

  6. Bạn sẽ thấy đầu ra sau:Review policy, for the policy Name, enter

    aws-cli/2.0.57 Python/3.7.4 Darwin/19.6.0 exe/x86_64
    7.

  7. Đối với các lệnh dài, một ký tự thoát (

    aws-cli/2.0.57 Python/3.7.4 Darwin/19.6.0 exe/x86_64
    6) được sử dụng để phân chia lệnh trên nhiều dòng.Create policy.

Trên Linux và MacOS, hãy sử dụng trình quản lý gói và shell ưa thích của bạn. Trên Windows 10, bạn có thể cài đặt hệ thống con Windows cho Linux để nhận phiên bản Ubuntu và Bash tích hợp Windows.

  1. Tạo một vai trò thực thi. Vai trò AWS Danh tính và Quản lý truy cập (IAM) này sử dụng chính sách tùy chỉnh để cấp quyền chức năng Lambda của bạn để truy cập các tài nguyên AWS cần thiết. Lưu ý rằng trước tiên bạn phải tạo chính sách và sau đó tạo vai trò thực thi.Roles page of the IAM console.

  2. Để tạo chính sách tùy chỉnhCreate role.

  3. Mở trang chính sách của bảng điều khiển IAM.AWS service.

  4. Chọn Tạo Chính sách.Lambda.

  5. Chọn tab JSON, và sau đó dán chính sách tùy chỉnh sau vào trình soạn thảo JSON.Next: Permissions.

  6. Chính sách này bao gồm các quyền cho chức năng của bạn để truy cập nhật ký DynamoDB và Amazon CloudWatch.

  7. Chọn Tiếp theo: Thẻ.Next: Tags.

  8. Để hoàn thành các bước sau, bạn cần một thiết bị đầu cuối dòng lệnh hoặc shell để chạy các lệnh. Các lệnh và đầu ra dự kiến ​​được liệt kê trong các khối riêng biệt:Next: Review.

  9. Bạn sẽ thấy đầu ra sau:Review, for the Role name, enter

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "Stmt1428341300017",
          "Action": [
            "dynamodb:DeleteItem",
            "dynamodb:GetItem",
            "dynamodb:PutItem",
            "dynamodb:Query",
            "dynamodb:Scan",
            "dynamodb:UpdateItem"
          ],
          "Effect": "Allow",
          "Resource": "*"
        },
        {
          "Sid": "",
          "Resource": "*",
          "Action": [
            "logs:CreateLogGroup",
            "logs:CreateLogStream",
            "logs:PutLogEvents"
          ],
          "Effect": "Allow"
        }
      ]
    }
    0.

  10. Để tạo chính sách tùy chỉnhCreate role.

  11. Mở trang chính sách của bảng điều khiển IAM.Roles page, choose the name of your role (

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "Stmt1428341300017",
          "Action": [
            "dynamodb:DeleteItem",
            "dynamodb:GetItem",
            "dynamodb:PutItem",
            "dynamodb:Query",
            "dynamodb:Scan",
            "dynamodb:UpdateItem"
          ],
          "Effect": "Allow",
          "Resource": "*"
        },
        {
          "Sid": "",
          "Resource": "*",
          "Action": [
            "logs:CreateLogGroup",
            "logs:CreateLogStream",
            "logs:PutLogEvents"
          ],
          "Effect": "Allow"
        }
      ]
    }
    0).

  12. Chọn Tạo Chính sách.Summary page, copy the Role ARN. You need this later in the tutorial.

Tạo chức năng

Kiểm tra chức năng

Kiểm tra chức năng

Tạo API REST bằng cổng API

Tạo bảng DynamoDB

  1. Kiểm tra thiết lập

    {
        "operation": "echo",
        "payload": {
            "somekey1": "somevalue1",
            "somekey2": "somevalue2"
        }
    }
  2. Làm sạch tài nguyên của bạn

    aws lambda invoke --function-name LambdaFunctionOverHttps \
    --payload file://input.txt outputfile.txt --cli-binary-format raw-in-base64-out

    Hướng dẫn này giả định rằng bạn có một số kiến ​​thức về các hoạt động Lambda cơ bản và bảng điều khiển Lambda. Nếu bạn chưa có, hãy làm theo các hướng dẫn trong việc tạo chức năng Lambda với bảng điều khiển để tạo chức năng Lambda đầu tiên của bạn.cli-binary-format option is required if you're using AWS CLI version 2. To make this the default setting, run

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "Stmt1428341300017",
          "Action": [
            "dynamodb:DeleteItem",
            "dynamodb:GetItem",
            "dynamodb:PutItem",
            "dynamodb:Query",
            "dynamodb:Scan",
            "dynamodb:UpdateItem"
          ],
          "Effect": "Allow",
          "Resource": "*"
        },
        {
          "Sid": "",
          "Resource": "*",
          "Action": [
            "logs:CreateLogGroup",
            "logs:CreateLogStream",
            "logs:PutLogEvents"
          ],
          "Effect": "Allow"
        }
      ]
    }
    5. For more information, see AWS CLI supported global command line options.

  3. Để hoàn thành các bước sau, bạn cần một thiết bị đầu cuối dòng lệnh hoặc shell để chạy các lệnh. Các lệnh và đầu ra dự kiến ​​được liệt kê trong các khối riêng biệt:

Tạo API REST bằng cổng API

Tạo bảng DynamoDB

Khi phương thức API của bạn nhận được yêu cầu HTTP, API Gateway sẽ gọi chức năng Lambda của bạn.

Tạo API

Trong các bước sau, bạn tạo API REST

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Stmt1428341300017",
      "Action": [
        "dynamodb:DeleteItem",
        "dynamodb:GetItem",
        "dynamodb:PutItem",
        "dynamodb:Query",
        "dynamodb:Scan",
        "dynamodb:UpdateItem"
      ],
      "Effect": "Allow",
      "Resource": "*"
    },
    {
      "Sid": "",
      "Resource": "*",
      "Action": [
        "logs:CreateLogGroup",
        "logs:CreateLogStream",
        "logs:PutLogEvents"
      ],
      "Effect": "Allow"
    }
  ]
}
7 bằng bảng điều khiển API Gateway.

Để tạo API

  1. Mở bảng điều khiển cổng API.API Gateway console.

  2. Chọn Tạo API.Create API.

  3. Trong hộp API còn lại, chọn Build.REST API box, choose Build.

  4. Trong Tạo API mới, chọn API mới.Create new API, choose New API.

  5. Trong Cài đặt, hãy làm như sau:Settings, do the following:

    1. Đối với tên API, nhập

      {
        "Version": "2012-10-17",
        "Statement": [
          {
            "Sid": "Stmt1428341300017",
            "Action": [
              "dynamodb:DeleteItem",
              "dynamodb:GetItem",
              "dynamodb:PutItem",
              "dynamodb:Query",
              "dynamodb:Scan",
              "dynamodb:UpdateItem"
            ],
            "Effect": "Allow",
            "Resource": "*"
          },
          {
            "Sid": "",
            "Resource": "*",
            "Action": [
              "logs:CreateLogGroup",
              "logs:CreateLogStream",
              "logs:PutLogEvents"
            ],
            "Effect": "Allow"
          }
        ]
      }
      7.API name, enter
      {
        "Version": "2012-10-17",
        "Statement": [
          {
            "Sid": "Stmt1428341300017",
            "Action": [
              "dynamodb:DeleteItem",
              "dynamodb:GetItem",
              "dynamodb:PutItem",
              "dynamodb:Query",
              "dynamodb:Scan",
              "dynamodb:UpdateItem"
            ],
            "Effect": "Allow",
            "Resource": "*"
          },
          {
            "Sid": "",
            "Resource": "*",
            "Action": [
              "logs:CreateLogGroup",
              "logs:CreateLogStream",
              "logs:PutLogEvents"
            ],
            "Effect": "Allow"
          }
        ]
      }
      7.

    2. Đối với loại điểm cuối, chọn khu vực.Endpoint Type, choose Regional.

  6. Chọn Tạo API.Create API.

Trong hộp API còn lại, chọn Build.

Trong Tạo API mới, chọn API mới.

Trong Cài đặt, hãy làm như sau:

  1. Đối với tên API, nhập

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "Stmt1428341300017",
          "Action": [
            "dynamodb:DeleteItem",
            "dynamodb:GetItem",
            "dynamodb:PutItem",
            "dynamodb:Query",
            "dynamodb:Scan",
            "dynamodb:UpdateItem"
          ],
          "Effect": "Allow",
          "Resource": "*"
        },
        {
          "Sid": "",
          "Resource": "*",
          "Action": [
            "logs:CreateLogGroup",
            "logs:CreateLogStream",
            "logs:PutLogEvents"
          ],
          "Effect": "Allow"
        }
      ]
    }
    7.API Gateway console, in the Resources tree of your API, make sure that the root (
    {
        "operation": "echo",
        "payload": {
            "somekey1": "somevalue1",
            "somekey2": "somevalue2"
        }
    }
    4) level is highlighted. Then, choose Actions, Create Resource.

  2. Đối với loại điểm cuối, chọn khu vực.New child resource, do the following:

    1. Tạo một tài nguyên trong APIResource Name, enter DynamoDBManager.

    2. Trong các bước sau, bạn tạo một tài nguyên có tên DynamoDBManager trong API REST của bạn.Resource Path set to

      {
          "operation": "echo",
          "payload": {
              "somekey1": "somevalue1",
              "somekey2": "somevalue2"
          }
      }
      6.

  3. Để tạo tài nguyênCreate Resource.

Trong bảng điều khiển cổng API, trong cây tài nguyên của API của bạn, đảm bảo rằng mức gốc ({ "operation": "echo", "payload": { "somekey1": "somevalue1", "somekey2": "somevalue2" } }4) được tô sáng. Sau đó, chọn hành động, tạo tài nguyên.

Theo tài nguyên trẻ em mới, hãy làm như sau:

Đối với tên tài nguyên, nhập DynamoDBManager.

  1. Giữ đường dẫn tài nguyên được đặt thành

    {
        "operation": "echo",
        "payload": {
            "somekey1": "somevalue1",
            "somekey2": "somevalue2"
        }
    }
    6.API Gateway console, in the Resources tree of your API, make sure that
    {
        "operation": "echo",
        "payload": {
            "somekey1": "somevalue1",
            "somekey2": "somevalue2"
        }
    }
    6 is highlighted. Then, choose Actions, Create Method.

  2. Chọn Tạo tài nguyên.

  3. Tạo một phương thức bài viết trên tài nguyênSetup pane, do the following:

    1. Trong các bước sau, bạn tạo phương thức POST trên tài nguyên DynamoDBManager mà bạn đã tạo trong phần trước.Integration type, choose Lambda Function.

    2. Để tạo phương thứcLambda Region, choose the same AWS Region as your Lambda function.

    3. Trong bảng điều khiển cổng API, trong cây tài nguyên của API của bạn, đảm bảo rằng

      {
          "operation": "echo",
          "payload": {
              "somekey1": "somevalue1",
              "somekey2": "somevalue2"
          }
      }
      6 được tô sáng. Sau đó, chọn hành động, tạo phương thức.Lambda Function, enter the name of your function (LambdaFunctionOverHttps).

    4. Trong menu thả xuống nhỏ xuất hiện dưới

      {
          "operation": "echo",
          "payload": {
              "somekey1": "somevalue1",
              "somekey2": "somevalue2"
          }
      }
      6, chọn POST và sau đó chọn biểu tượng Mark Mark.Use Default Timeout.

    5. Trong ngăn thiết lập của phương thức, hãy làm như sau:Save.

  4. Đối với loại tích hợp, chọn chức năng Lambda.Add Permission to Lambda Function dialog box, choose OK.

Đối với khu vực Lambda, hãy chọn vùng AWS giống như chức năng Lambda của bạn.

Đối với hàm Lambda, hãy nhập tên của chức năng của bạn (LambdaFunctionOverHttps).

Chọn Sử dụng thời gian chờ mặc định.

  1. Chọn Lưu.Tables page of the DynamoDB console.

  2. Trong hộp thoại Thêm quyền cho Chức năng Lambda, chọn OK.Create table.

  3. Tạo bảng DynamoDBTable details, do the following:

    1. Tạo bảng DynamoDB mà chức năng Lambda của bạn sử dụng.Table name, enter

      aws lambda invoke --function-name LambdaFunctionOverHttps \
      --payload file://input.txt outputfile.txt --cli-binary-format raw-in-base64-out
      3.

    2. Để tạo bảng DynamoDBPartition key, enter

      aws lambda invoke --function-name LambdaFunctionOverHttps \
      --payload file://input.txt outputfile.txt --cli-binary-format raw-in-base64-out
      4, and keep the data type set as String.

  4. Mở trang bảng của bảng điều khiển DynamoDB.Settings, keep the Default settings.

  5. Trong hộp thoại Thêm quyền cho Chức năng Lambda, chọn OK.Create table.

Tạo bảng DynamoDB

Tạo bảng DynamoDB mà chức năng Lambda của bạn sử dụng.

Để tạo bảng DynamoDB

Mở trang bảng của bảng điều khiển DynamoDB.

  1. Chọn Tạo bảng.API Gateway console, choose the name of your REST API (

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "Stmt1428341300017",
          "Action": [
            "dynamodb:DeleteItem",
            "dynamodb:GetItem",
            "dynamodb:PutItem",
            "dynamodb:Query",
            "dynamodb:Scan",
            "dynamodb:UpdateItem"
          ],
          "Effect": "Allow",
          "Resource": "*"
        },
        {
          "Sid": "",
          "Resource": "*",
          "Action": [
            "logs:CreateLogGroup",
            "logs:CreateLogStream",
            "logs:PutLogEvents"
          ],
          "Effect": "Allow"
        }
      ]
    }
    7).

  2. Trong bảng chi tiết, làm như sau:Resources tree, under

    {
        "operation": "echo",
        "payload": {
            "somekey1": "somevalue1",
            "somekey2": "somevalue2"
        }
    }
    6, choose your POST method.

  3. Đối với tên bảng, nhập

    aws lambda invoke --function-name LambdaFunctionOverHttps \
    --payload file://input.txt outputfile.txt --cli-binary-format raw-in-base64-out
    3.Method Execution pane, in the Client box, choose Test.

  4. Đối với khóa phân vùng, nhập

    aws lambda invoke --function-name LambdaFunctionOverHttps \
    --payload file://input.txt outputfile.txt --cli-binary-format raw-in-base64-out
    4 và giữ cho kiểu dữ liệu được đặt dưới dạng chuỗi.Method Test pane, keep Query Strings and Headers empty. For Request Body, paste the following JSON:

    {
      "operation": "create",
      "tableName": "lambda-apigateway",
      "payload": {
        "Item": {
          "id": "1234ABCD",
          "number": 5
        }
      }
    }
  5. Trong cài đặt, giữ các cài đặt mặc định.Test.

Kiểm tra thiết lập

Bây giờ bạn đã sẵn sàng để kiểm tra thiết lập. Bạn có thể gửi yêu cầu đến phương thức POST của mình trực tiếp từ bảng điều khiển cổng API. Trong bước này, bạn sử dụng thao tác

aws lambda invoke --function-name LambdaFunctionOverHttps \
--payload file://input.txt outputfile.txt --cli-binary-format raw-in-base64-out
6 theo sau là hoạt động
aws lambda invoke --function-name LambdaFunctionOverHttps \
--payload file://input.txt outputfile.txt --cli-binary-format raw-in-base64-out
7.

Để tạo một mục trong bảng DynamoDB của bạn

  1. Hàm Lambda của bạn có thể sử dụng thao tác

    aws lambda invoke --function-name LambdaFunctionOverHttps \
    --payload file://input.txt outputfile.txt --cli-binary-format raw-in-base64-out
    6 để tạo một mục trong bảng DynamoDB của bạn.API Gateway console, return to your POST method's Method Test pane.

  2. Trong bảng điều khiển cổng API, chọn tên API REST của bạn (

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "Stmt1428341300017",
          "Action": [
            "dynamodb:DeleteItem",
            "dynamodb:GetItem",
            "dynamodb:PutItem",
            "dynamodb:Query",
            "dynamodb:Scan",
            "dynamodb:UpdateItem"
          ],
          "Effect": "Allow",
          "Resource": "*"
        },
        {
          "Sid": "",
          "Resource": "*",
          "Action": [
            "logs:CreateLogGroup",
            "logs:CreateLogStream",
            "logs:PutLogEvents"
          ],
          "Effect": "Allow"
        }
      ]
    }
    7).Method Test pane, keep Query Strings and Headers empty. In Request Body, paste the following JSON:

    {
        "operation": "update",
        "tableName": "lambda-apigateway",
        "payload": {
            "Key": {
                "id": "1234ABCD"
            },
            "AttributeUpdates": {
                "number": {
                    "Value": 10
                }
            }
        }
    }
  3. Trong cài đặt, giữ các cài đặt mặc định.Test.

Kiểm tra thiết lập

Bây giờ bạn đã sẵn sàng để kiểm tra thiết lập. Bạn có thể gửi yêu cầu đến phương thức POST của mình trực tiếp từ bảng điều khiển cổng API. Trong bước này, bạn sử dụng thao tác aws lambda invoke --function-name LambdaFunctionOverHttps \ --payload file://input.txt outputfile.txt --cli-binary-format raw-in-base64-out6 theo sau là hoạt động aws lambda invoke --function-name LambdaFunctionOverHttps \ --payload file://input.txt outputfile.txt --cli-binary-format raw-in-base64-out7.

Để tạo một mục trong bảng DynamoDB của bạn

Hàm Lambda của bạn có thể sử dụng thao tác

aws lambda invoke --function-name LambdaFunctionOverHttps \
--payload file://input.txt outputfile.txt --cli-binary-format raw-in-base64-out
6 để tạo một mục trong bảng DynamoDB của bạn.

  1. Trong bảng điều khiển cổng API, chọn tên API REST của bạn (

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "Stmt1428341300017",
          "Action": [
            "dynamodb:DeleteItem",
            "dynamodb:GetItem",
            "dynamodb:PutItem",
            "dynamodb:Query",
            "dynamodb:Scan",
            "dynamodb:UpdateItem"
          ],
          "Effect": "Allow",
          "Resource": "*"
        },
        {
          "Sid": "",
          "Resource": "*",
          "Action": [
            "logs:CreateLogGroup",
            "logs:CreateLogStream",
            "logs:PutLogEvents"
          ],
          "Effect": "Allow"
        }
      ]
    }
    7).Functions page of the Lambda console.

  2. Trong cây tài nguyên, theo

    {
        "operation": "echo",
        "payload": {
            "somekey1": "somevalue1",
            "somekey2": "somevalue2"
        }
    }
    6, chọn phương thức POST của bạn.

  3. Trong khung thực thi phương thức, trong hộp máy khách, chọn kiểm tra.Actions, then choose Delete.

  4. Trong ngăn thử nghiệm phương thức, giữ cho các chuỗi truy vấn và tiêu đề trống. Đối với cơ thể yêu cầu, dán JSON sau:Delete.

Chọn kiểm tra.

  1. Các kết quả kiểm tra sẽ hiển thị trạng thái

    {
      "operation": "create",
      "tableName": "lambda-apigateway",
      "payload": {
        "Item": {
          "id": "1234ABCD",
          "number": 5
        }
      }
    }
    2, chỉ ra rằng hoạt động
    aws lambda invoke --function-name LambdaFunctionOverHttps \
    --payload file://input.txt outputfile.txt --cli-binary-format raw-in-base64-out
    6 đã thành công. Để xác nhận, bạn có thể kiểm tra xem bảng DynamoDB của bạn hiện có chứa một mục có
    {
      "operation": "create",
      "tableName": "lambda-apigateway",
      "payload": {
        "Item": {
          "id": "1234ABCD",
          "number": 5
        }
      }
    }
    4 và
    {
      "operation": "create",
      "tableName": "lambda-apigateway",
      "payload": {
        "Item": {
          "id": "1234ABCD",
          "number": 5
        }
      }
    }
    5 không.Roles page of the IAM console.

  2. Để cập nhật mục trong bảng DynamoDB của bạn

  3. Bạn cũng có thể cập nhật các mục trong bảng bằng hoạt động

    aws lambda invoke --function-name LambdaFunctionOverHttps \
    --payload file://input.txt outputfile.txt --cli-binary-format raw-in-base64-out
    7.Delete role.

  4. Trong bảng điều khiển cổng API, hãy quay lại ngăn kiểm tra phương thức của phương thức bài của bạn.Yes, delete.

Trong ngăn thử nghiệm phương thức, giữ cho các chuỗi truy vấn và tiêu đề trống. Trong cơ thể yêu cầu, dán JSON sau:

  1. Các kết quả kiểm tra sẽ hiển thị trạng thái

    {
      "operation": "create",
      "tableName": "lambda-apigateway",
      "payload": {
        "Item": {
          "id": "1234ABCD",
          "number": 5
        }
      }
    }
    2, chỉ ra rằng hoạt động
    aws lambda invoke --function-name LambdaFunctionOverHttps \
    --payload file://input.txt outputfile.txt --cli-binary-format raw-in-base64-out
    7 đã thành công. Để xác nhận, bạn có thể kiểm tra xem bảng DynamoDB của bạn hiện có chứa một mục được cập nhật với
    {
      "operation": "create",
      "tableName": "lambda-apigateway",
      "payload": {
        "Item": {
          "id": "1234ABCD",
          "number": 5
        }
      }
    }
    4 và
    {
        "operation": "update",
        "tableName": "lambda-apigateway",
        "payload": {
            "Key": {
                "id": "1234ABCD"
            },
            "AttributeUpdates": {
                "number": {
                    "Value": 10
                }
            }
        }
    }
    0 không.APIs page of the API Gateway console.

  2. Làm sạch tài nguyên của bạn

  3. Bây giờ bạn có thể xóa các tài nguyên mà bạn đã tạo cho hướng dẫn này, trừ khi bạn muốn giữ lại chúng. Bằng cách xóa tài nguyên AWS mà bạn không còn sử dụng, bạn ngăn chặn các khoản phí không cần thiết cho tài khoản AWS của mình.Actions, Delete.

  4. Trong ngăn thử nghiệm phương thức, giữ cho các chuỗi truy vấn và tiêu đề trống. Đối với cơ thể yêu cầu, dán JSON sau:Delete.

Chọn kiểm tra.

  1. Chọn Lưu.Tables page of the DynamoDB console.

  2. Trong hộp thoại Thêm quyền cho Chức năng Lambda, chọn OK.

  3. Trong ngăn thử nghiệm phương thức, giữ cho các chuỗi truy vấn và tiêu đề trống. Đối với cơ thể yêu cầu, dán JSON sau:Delete.

  4. Chọn kiểm tra.

  5. Trong ngăn thử nghiệm phương thức, giữ cho các chuỗi truy vấn và tiêu đề trống. Đối với cơ thể yêu cầu, dán JSON sau:Delete.

Làm cách nào để chạy Lambda bằng cổng API?

Thêm một điểm cuối vào chức năng Lambda của bạn..
Mở trang chức năng của bảng điều khiển Lambda ..
Chọn một chức năng ..
Trong tổng quan chức năng, chọn Thêm Trigger ..
Chọn cổng API ..
Chọn Tạo API hoặc sử dụng API hiện có. API mới: Đối với loại API, chọn API HTTP. ....
Để bảo mật, chọn mở ..
Chọn thêm ..

Chúng ta có thể gọi cổng API từ Lambda không?

[Trả lời] Không có gì sai với mô hình này.Và vâng, bạn có thể gọi đây là API (Proxy Lambda) là bất kỳ API REST nào.yes, you can call this API (Lambda proxy) as any Rest API.

Làm thế nào để bạn gọi một chức năng Lambda từ API trong Python?

Mã các chức năng Lambda.Tạo cổng API.Triển khai và kiểm tra cổng API ...
Nhấp vào Thiết lập ngay cho điểm cuối bài trước ..
Đặt loại tích hợp thành hàm Lambda.....
Nhập petlambda-set vào trường chức năng Lambda và chọn Lưu ..

Làm cách nào để kiểm tra cổng API với Lambda?

Đăng nhập vào bảng điều khiển cổng API tại https://console.aws.amazon.com/apigatch ...
Chọn API REST ..
Trong khung tài nguyên, chọn phương pháp bạn muốn kiểm tra ..
Trong khung thực thi phương thức, trong hộp máy khách, chọn kiểm tra.....
Chọn kiểm tra ..