Php AmazonAlexa:ISPAPI在发出请求时总是返回400

Php AmazonAlexa:ISPAPI在发出请求时总是返回400,php,echo,amazon,alexa,Php,Echo,Amazon,Alexa,在几年前放弃之后,我最近决定再次尝试制作Alexa skills。这是相对困难的,但在一个星期内,我做了一个有趣的小玩具技能,并成功地出版了它。很好,下一步,监控。 这就是我遇到问题的地方。首先,我想验证是否可以调用ISPAPI,但每次调用时,都会出现错误400。 变量的填充方式如下所示: $user_id=$post->session->user->userId; $request_locale=$post->request->locale; $api_url=

在几年前放弃之后,我最近决定再次尝试制作Alexa skills。这是相对困难的,但在一个星期内,我做了一个有趣的小玩具技能,并成功地出版了它。很好,下一步,监控。 这就是我遇到问题的地方。首先,我想验证是否可以调用ISPAPI,但每次调用时,都会出现错误400。 变量的填充方式如下所示:

$user_id=$post->session->user->userId;
$request_locale=$post->request->locale;

$api_url=$post->context->System->apiEndpoint;
$api_token=$post->context->System->apiAccessToken;
$api_endpoint=$api_url;
$api_url.="/v1/users/".$user_id."/skills/".$skill_id."/";
然后按如下方式启动CURL: $ch=curl_init($api_url.“inSkillProducts”); $headers=array('Host:'.$api_endpoint','Accept:application/json','Accepted Language:'.$request_locale','Authorization:Bearer'.$api_token)

结果是400页。 正确地从JSON中检索这些值,并使用amzn1.ask…填充这些值。。。。等等 skill id的值直接从控制面板获取,如果脚本与alexa提供的值不匹配,那么脚本在到达执行的这一点之前就会失败

如果可能的话,我非常感谢你的帮助

curl_setopt_array($ch, array(CURLOPT_HTTPHEADER  => $headers, CURLOPT_RETURNTRANSFER  =>true));

$result = curl_exec($ch);
curl_close($ch);