我想为api请求添加一些属性以进一步使用它们。我发送的请求是这样的:
$data = array(
"source" => "My text",
"speech" => "My text",
"displayText" =>"My text",
"contextOut" => array()
)
header('Content-Type: application/json');
echo json_encode($data);
如何将自己的自定义参数添加到此请求中?
答案 0 :(得分:2)
由于您自己处理JSON,最好的方法是在Context中添加所需的参数。此Context将被发送回您的webhook,以获取Context的生命周期(用户请求数)。您可以在任何时候重新发送Context并延长其寿命,或者只是将其设置为较长的生命周期。上下文仅适用于同一会话 - 它们不会跨越对话。
您可以创建一个上下文并在回复中发送,如下所示:
$context = array(
"name" => "my-context",
"lifespan" => 99,
"parameters" => array(
"parameter_one" => "value_one",
"parameter_two" => "value_two"
)
);
$contexts = [$context];
$data = array(
"source" => "My text",
"speech" => "My text",
"displayText" =>"My text",
"contextOut" => $contexts
)
在您的请求中,您需要在result.contexts
的数组中查找提取的JSON正文中的值。