我是 AWS 新手,正在尝试弄清楚如何使用 ruby 调用 lambda 函数。有人可以给我提供一个使用 ruby 调用 AWS lambda 函数的示例代码
谢谢
编辑1:尝试代码后,我收到以下错误
nil:NilClass 的未定义方法“match”
这是我的代码:
require 'aws/decider'
require 'aws-sdk'
class U_Act
extend AWS::Flow::Activities
activity :b_u do
{
version: "1.0"
}
end
def b_u(c_id)
lambda=Aws::Lambda::Client.new(
access_key_id: “XxXXXXXXXXX”,
secret_access_key: “XXXXXXXXXX”
)
resp = lambda.invoke(
function_name: “s_u_1” # required
)
print "#{resp}"
end
结束
最佳答案
以下是使用 aws-sdk 调用 lambda 函数的方法,请记住,如果您运行的实例具有附加了函数的 lambda 调用权限的 IAM 角色,则无需提供 access_key_id/secret_access_key .
require 'aws-sdk'
lambda = Aws::Lambda::Client.new(
region: 'eu-west-1',
access_key_id: 'access_key_id'
secret_access_key: 'secret_access_key'
)
#=> #<Aws::Lambda::Client>
resp = lambda.invoke(function_name: 'function_name')
#=> #<struct Aws::Lambda::Types::InvocationResponse status_code=200, function_error=nil, log_result=nil, payload=#<StringIO:0x00000000000>>
关于ruby - 在 ruby 代码中调用 AWS lambda 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38125716/