Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从AWS API向AWS lambda函数传递字符串参数? 公共字符串handleRequest(字符串输入,上下文){ context.getLogger().log(“输入:”+Input); @抑制警告(“串行”) 哈希表htAWSServices= 新哈希表(){{ put(“Compute”,“对于Compute-请插入类似Compute1/../Compute6”); put(“Compute1”、“AWS Lambda(Compute)”); put(“Compute2”、“AWS EC2(Compute)”); put(“Compute3”、“AWS EC2容器服务(Compute)”); put(“Compute4”、“AWS Lightsail(Compute)”); put(“Compute5”、“AWS弹性豆茎(Compute)”); put(“Compute6”、“AWS批处理(计算)”); put(“分析”,“用于分析-请插入类似分析1/../Analytics8”); put(“分析1”,“AWS雅典娜(分析)”); put(“Analytics2”、“AWS EMR(分析)”); put(“Analytics3”、“AWS云搜索(分析)”); put(“Analytics4”、“AWS弹性搜索服务(分析)”); put(“分析5”,“AWS运动(分析)”); put(“Analytics6”、“AWS数据管道(分析)”); put(“Analytics7”、“AWS QuickSight(分析)”); put(“Analytics8”、“AWS胶水(分析)”); }}; 字符串stOutput=“”; 字符串stValue=htAWSServices.get(输入); if(stValue==null) stOutput=“你好,来自Lambda!”,“+input+”!”; 其他的 stOutput=“你好,AWS有”+stValue+“!”; 回输; }_Java_Amazon Web Services_Aws Lambda_Aws Api Gateway - Fatal编程技术网

Java 如何从AWS API向AWS lambda函数传递字符串参数? 公共字符串handleRequest(字符串输入,上下文){ context.getLogger().log(“输入:”+Input); @抑制警告(“串行”) 哈希表htAWSServices= 新哈希表(){{ put(“Compute”,“对于Compute-请插入类似Compute1/../Compute6”); put(“Compute1”、“AWS Lambda(Compute)”); put(“Compute2”、“AWS EC2(Compute)”); put(“Compute3”、“AWS EC2容器服务(Compute)”); put(“Compute4”、“AWS Lightsail(Compute)”); put(“Compute5”、“AWS弹性豆茎(Compute)”); put(“Compute6”、“AWS批处理(计算)”); put(“分析”,“用于分析-请插入类似分析1/../Analytics8”); put(“分析1”,“AWS雅典娜(分析)”); put(“Analytics2”、“AWS EMR(分析)”); put(“Analytics3”、“AWS云搜索(分析)”); put(“Analytics4”、“AWS弹性搜索服务(分析)”); put(“分析5”,“AWS运动(分析)”); put(“Analytics6”、“AWS数据管道(分析)”); put(“Analytics7”、“AWS QuickSight(分析)”); put(“Analytics8”、“AWS胶水(分析)”); }}; 字符串stOutput=“”; 字符串stValue=htAWSServices.get(输入); if(stValue==null) stOutput=“你好,来自Lambda!”,“+input+”!”; 其他的 stOutput=“你好,AWS有”+stValue+“!”; 回输; }

Java 如何从AWS API向AWS lambda函数传递字符串参数? 公共字符串handleRequest(字符串输入,上下文){ context.getLogger().log(“输入:”+Input); @抑制警告(“串行”) 哈希表htAWSServices= 新哈希表(){{ put(“Compute”,“对于Compute-请插入类似Compute1/../Compute6”); put(“Compute1”、“AWS Lambda(Compute)”); put(“Compute2”、“AWS EC2(Compute)”); put(“Compute3”、“AWS EC2容器服务(Compute)”); put(“Compute4”、“AWS Lightsail(Compute)”); put(“Compute5”、“AWS弹性豆茎(Compute)”); put(“Compute6”、“AWS批处理(计算)”); put(“分析”,“用于分析-请插入类似分析1/../Analytics8”); put(“分析1”,“AWS雅典娜(分析)”); put(“Analytics2”、“AWS EMR(分析)”); put(“Analytics3”、“AWS云搜索(分析)”); put(“Analytics4”、“AWS弹性搜索服务(分析)”); put(“分析5”,“AWS运动(分析)”); put(“Analytics6”、“AWS数据管道(分析)”); put(“Analytics7”、“AWS QuickSight(分析)”); put(“Analytics8”、“AWS胶水(分析)”); }}; 字符串stOutput=“”; 字符串stValue=htAWSServices.get(输入); if(stValue==null) stOutput=“你好,来自Lambda!”,“+input+”!”; 其他的 stOutput=“你好,AWS有”+stValue+“!”; 回输; },java,amazon-web-services,aws-lambda,aws-api-gateway,Java,Amazon Web Services,Aws Lambda,Aws Api Gateway,现在我是否将键值从API网关传递到Lambda函数?Lambda接受事件、上下文和回调。当点击API网关时,您可以在url中添加参数,这些值将成为事件。一个例子是www.myendpoint.com/?input=myInput。我建议创建自定义请求类,并提及该类中的所有字段。像公共类RequestClass{private String Compute;}一样,将所有值设置为此类,而不是传入键值Thank@John。现在问题来了,当我点击带有参数的URL时。正如您所说,我使用了该模式,但它表示

现在我是否将键值从API网关传递到Lambda函数?

Lambda接受事件、上下文和回调。当点击API网关时,您可以在url中添加参数,这些值将成为事件。一个例子是
www.myendpoint.com/?input=myInput
。我建议创建自定义请求类,并提及该类中的所有字段。像公共类RequestClass{private String Compute;}一样,将所有值设置为此类,而不是传入键值Thank@John。现在问题来了,当我点击带有参数的URL时。正如您所说,我使用了该模式,但它表示{“errorMessage”:“JSON解析期间发生错误”,“errorType”:“java.lang.RuntimeException”,“stackTrace”:[],谢谢@Vaibs。这次它可以在没有自定义类的情况下工作。@BhaskarPal你能将其标记为已应答吗?Lambda接受一个事件、一个上下文和一个回调。当点击API网关时,你可以在url中添加参数,这些值就成为事件。例如
www.myendpoint.com/?input=myInput
。我建议创建custom请求类并提到了该类中的所有字段。与公共类RequestClass{private String Compute;}一样,将所有值设置到此类,而不是传入键值Thank@John。现在,当我用参数点击URL时,问题出现了。我使用了您所说的模式,但它显示{“errorMessage”:“JSON解析过程中出现错误”,“errorType:”java.lang.RuntimeException”,“stackTrace:”[],谢谢@Vaibs。这次它在没有自定义类的情况下工作。@BhaskarPal您能将其标记为已回答吗?
public String handleRequest(String input, Context context) {
    context.getLogger().log("Input: " + input);

    @SuppressWarnings("serial")
    Hashtable<String, String> htAWSServices = 
            new Hashtable <String, String> (){{
                put("Compute","For Compute - please insert like Compute1/.../Compute6");
                put("Compute1","AWS Lambda(Compute)");
                put("Compute2","AWS EC2(Compute)");
                put("Compute3","AWS EC2 Container Service(Compute)");
                put("Compute4","AWS Lightsail(Compute)");
                put("Compute5","AWS Elastic Beanstalk(Compute)");
                put("Compute6","AWS Batch(Compute)");

                put("Analytics","For Analytics - please insert like Analytics1/.../Analytics8");
                put("Analytics1","AWS Athena(Analytics)");
                put("Analytics2","AWS EMR(Analytics)");
                put("Analytics3","AWS CloudSearch(Analytics)");
                put("Analytics4","AWS Elasticsearch Service(Analytics)");
                put("Analytics5","AWS Kinesis(Analytics)");
                put("Analytics6","AWS Data Pipeline(Analytics)");
                put("Analytics7","AWS QuickSight(Analytics)");
                put("Analytics8","AWS Glue(Analytics)");
            }};

    String stOutput = "";
    String stValue = htAWSServices.get(input);

    if (stValue == null)
        stOutput = "Hello from Lambda!, "+input+"!";
    else
        stOutput = "Hello AWS has "+stValue+"!";
    return stOutput;
}