Aws Lambda:如何在用 Java 实现的 lambda 函数中从 Api 网关获取查询参数

Moh*_*pta 5 java aws-lambda aws-api-gateway

Aws Lambda - 如何在用 Java 实现的 lambda 函数中从 Api 网关获取查询参数。

我有以下代码片段:

package com.amazonaws.lambda.demo;

import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.RequestHandler;

public class LambdaFunctionHandler implements RequestHandler<String, String> {

    @Override
    public String handleRequest(String input, Context context) {
        context.getLogger().log("Input: " + input);

        // TODO: implement your handler
        return "Hello from " + input;
    }
}
Run Code Online (Sandbox Code Playgroud)

如果上面的handleRequest函数中有的话,我如何访问查询参数。

tgk*_*k23 7

pom.xml中,确保此处指定“ 2.2.5 ”或更新版本

<dependency>
  <groupId>com.amazonaws</groupId>
  <artifactId>aws-lambda-java-events</artifactId>
  <version>2.2.5</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

你的 java lambda 类:

import com.amazonaws.services.lambda.runtime.events.APIGatewayProxyRequestEvent;
import com.amazonaws.services.lambda.runtime.events.APIGatewayProxyResponseEvent;

public class LambdaFunctionHandler
    implements RequestHandler<APIGatewayProxyRequestEvent, APIGatewayProxyResponseEvent> {
    @Override
    public APIGatewayProxyResponseEvent handleRequest(APIGatewayProxyRequestEvent input,
            Context context) {
        Map<String, String> inputParams = input.getPathParameters();

        APIGatewayProxyResponseEvent responseEvent = new APIGatewayProxyResponseEvent();
        responseEvent.setBody("body text");
        responseEvent.setStatusCode(200);
        return responseEvent;
    }
}
Run Code Online (Sandbox Code Playgroud)


Vij*_*han 0

您可以尝试在API网关的集成请求正文映射模板中映射您想要的所有内容。一旦你构建了 body 映射模板,那么在 lambda 的上下文中你将获得你构建的 excat json。

请找到下面的链接,我已经给出了类似问题的解决方案,

/sf/answers/3248544631/