Hướng dẫn how do you call rest api inside aws lambda function using python? - làm thế nào để bạn gọi phần còn lại api bên trong hàm aws lambda bằng cách sử dụng python?

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.

  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.

  8. Chọn Tiếp theo: Đánh giá.Role details, 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.

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

  10. 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).

  11. 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

Kiểm tra thiết lập

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 để gọi API trong chức năng Python Lambda?

Thực hiện các cuộc gọi API từ AWS Lambda để truy cập cơ sở dữ liệu phụ trợ..
Bước 1 - Đăng nhập vào tài khoản AWS của bạn và tạo chức năng Lambda. ....
Bước 2 - Sao chép mã bên dưới và thay thế mã hiện có trong Lambda_Function của bạn. ....
Bước 3 - Cấu hình sự kiện thử nghiệm và chạy thử nghiệm trên chức năng Lambda của bạn ..

Làm cách nào để gọi API REST từ AWS 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 của bạn ..
Lưu ý URL gọi API của bạn ..
Xác minh phản hồi của API của bạn.Bạn sẽ xem văn bản "Xin chào từ Lambda!"trong trình duyệt của bạn ..

Tôi có thể gọi API từ chức năng Lambda không?

Như thế này, chúng ta có thể gọi bất kỳ API REST nào trong chức năng Lambda của chúng ta và thực hiện bất kỳ hoạt động không có máy chủ nào trên phản hồi.Để biết thêm về các chức năng của Lambda và có được một bàn tay hoàn chỉnh mã làm việc, vui lòng truy cập kho lưu trữ GitHub của chúng tôi tại đây.we can call any REST API in our Lambda Function and perform any serverless operations on the response. To know more about Lambda functions and get a hand over the complete working code, please visit our Github Repository here.

Làm thế nào để bạn lấy dữ liệu từ API bằng AWS Lambda?

Chúng tôi sẽ sử dụng AWS Lambda cho dự án đơn giản này ...
Bắt đầu chức năng Lambda ..
Tải xuống dữ liệu từ API giả vào hệ thống tệp cục bộ ..
Sao chép các tệp đã tải xuống thành AWS S3 ..
Dừng chức năng Lambda ..
Hàm Lambda sẽ được lên kế hoạch để chạy cứ sau 5 phút ..