首页 > 解决方案 > Azure Durable 函数 python DurableOrchestrationContext get_input 返回 null

问题描述

我正在测试这个函数,来自 Azure 持久函数的 get_input() 用于 Orchestra 函数。功能的更多细节

我现在面临的是,当我尝试使用邮递员进行测试并输入 json 输入时,例如

{
    "points": 222
}

作为 json 主体并在调用时http://localhost:<portnumber>/api/orchestrators/DurableFunctionsOrchestrator1,当我尝试返回 get_input 函数的值时,它总是会返回一个空值

下面是它返回给我的屏幕截图。如您所见,自完成状态以来一切正常,但输出始终返回空值。

在此处输入图像描述

标签: pythonazurefunctionazure-durable-functions

解决方案


Instance_id您可以在其中传递您的参数以从 Durable Orchestration 客户端Client_input获取参数。通过编排器request body传递Json序列化有效负载。

async  def  main(req: func.HttpRequest, starter: str) -> func.HttpResponse:

client =  df.DurableOrchestrationClient(starter)

function_name =  req.route_params["functionName"]

requestBody =  json.loads(req.get_body().decode())

instance_id =  await  client.start_new(function_name, client_input=requestBody)

在协调器中,您可以使用相同的代码get_input()

requestBody : str  =  context.get_input()

我尝试使用博客。我没有得到任何 Null 值get_input()


推荐阅读