当前位置: 首页 > 知识库问答 >
问题:

如何使用AWS Lambda(Python)调用step函数

林祯
2023-03-14
{
    "executionArn": "arn:aws:states:ap-south-1:123456789012:execution:Test_Math:xxx",
    "startDate": 1560344276.117
}

我如何获得API调用以返回答案(在本例中是数字70)?

我已经看过了AWS文档和AWS API网关的步骤函数,但是我还是不清楚。

  1. 如何创建一个新的lambda函数(或使用上面两个函数中的任何一个)来调用/执行这个step函数来返回答案?
  2. 还有其他方法可以通过API调用返回步骤函数的答案吗?
#set($inputRoot = $input.path('$')) 

#set($data = $util.escapeJavaScript($input.json('$')))

{
  "input": "{ \"num1\": $inputRoot.num1, \"num2\": $inputRoot.num2 }",

  "stateMachineArn": "arn:aws:states:ap-south 1:998338******:stateMachine:Test_Math"
}
Integration type: AWS Service
AWS Service: Step Functions
HTTP method: GET
Action: Describe Execution
Content Handling: Passthrough

Mapping template : application/json

#set($inputRoot = $input.path('$'))

#set($data = $util.escapeJavaScript($input.json('$')))

{
   "executionArn": "arn:aws:states:ap-south-1:998338321653:execution:Test_Math:3981114a-da51-411d-9533-8571dc976e2d",

  "input": "{ \"num1\": $inputRoot.num1, \"num2\": $inputRoot.num2 }"
}

附注:我想使用step函数部署我的机器学习模型,这只是我尝试的一个简单测试。

共有1个答案

马安邦
2023-03-14

您可以使用Descripe_Execution方法来获取StepFunction的最终结果。您必须将执行arn作为输入传递给这个方法。

在https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/stepfunctions.html#sfn.client.descripe_execution

下面python代码将打印给定执行ARN的输出。

import boto3

client = boto3.client('stepfunctions')
executionArn = ''

response = client.describe_execution(
    executionArn=executionArn
)
#print(response)
print(response.get('output'))
 类似资料:
  • 我想知道是否有办法在python代码中使用c函数 例如,在做了我的研究之后,我确实使用. dll文件找到了这个解决方案。但它找不到功能我的代码: 享乐cpp: 使用cmd编译它: g有趣。cpp-o乐趣。动态链接库 使用Python调用函数,ctype: 但是我有这个错误: 回溯(最后一次调用):文件“c:\Users\User.vscode\extensions\ms python.python

  • 问题内容: 我正在做一个网络抓取项目。我正在使用的网站之一的数据来自Javascript。 在我之前的一个问题中,有人建议我可以直接从Python调用Javascript,但是我不确定如何实现。 例如:如果JavaScript函数定义为: 如何从Python调用JavaScript函数? 问题答案: 查找具有Python绑定的JavaScript解释器。(尝试Rhino?V8?SeaMonkey?

  • 问题内容: 我有以下代码: 我怎么能叫和动态? 例如: 我使用了大括号,因为这是我以前在PHP中使用的方式,但是显然不起作用。 如何使用Python做到这一点? 问题答案: 如果不想使用并且不想创建单独的模块和/或类来封装要动态调用的函数,则可以将它们作为当前模块的属性来调用:

  • 问题内容: 我很清楚如何用C ++扩展Python,但是如果我想用Java编写要与numpy一起使用的函数怎么办? 这是一个简单的场景:我想使用Java类来计算numpy数组的平均值。如何将numpy向量传递给Java类并收集结果? 谢谢你的帮助! 问题答案: 我花了一些时间回答自己的问题,并希望分享我的答案,因为我觉得关于 stackoverflow的 这个主题的信息不多。我还认为,由于Java

  • 问题内容: 我有点着急,所以我只想问一个关于querydsl的快速问题。根据我的研究,查询dsl不支持存储过程,但可以支持数据库功能。我的问题是我们如何使用querydsl调用那些数据库函数? 问题答案: 您可以在查询中使用基于TemplateExpression的任意JPQL语法注入。 例如 如果您使用的是Hibernate 4.3或任何其他符合JPA 2.1的提供程序,则可以使用FUNCTIO

  • 我使用下面的逻辑来计算python列表中的平均时间增量。 以下是该函数的输入:- 然而,我得到了下面的错误。 在prepare_llog(llog_pd)288 289 result_df[‘输入率’]=\-- ##############################################################################################