Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在dominknow中将响应发送回php中的api_Php_Scorm - Fatal编程技术网

如何在dominknow中将响应发送回php中的api

如何在dominknow中将响应发送回php中的api,php,scorm,Php,Scorm,我正在使用dominknow平台,从那里他们向我的服务器文件发送一个api命中,我得到数据并存储到mysql数据库 所有的东西都在工作,但我无法向api发送响应,表明我已正确接收数据,所以消息显示“您的Pens包尚未发送到目标位置” 这是他们想要的回应 () 收到的命令和 理解,版本=1.0.0,pens数据={“通用”:https://share.cda.dominknow.one/e55c01eb58d4d8524272efe393e6c290/e710745c-5db9-3595-864f

我正在使用dominknow平台,从那里他们向我的服务器文件发送一个api命中,我得到数据并存储到mysql数据库

所有的东西都在工作,但我无法向api发送响应,表明我已正确接收数据,所以消息显示“您的Pens包尚未发送到目标位置”

这是他们想要的回应 () 收到的命令和 理解,版本=1.0.0,pens数据={“通用”:https://share.cda.dominknow.one/e55c01eb58d4d8524272efe393e6c290/e710745c-5db9-3595-864f-75571171c3eb/xapi,“url”:https://share.cda.dominknow.one/e55c01eb58d4d8524272efe393e6c290/e710745c-5db9-3595-864f-75571171c3eb/A490CE33-CF8F-29B5-453D-D2A6482C54FD“}

=================================

$all_data=$_POST;
$file = fopen('/var/www/html/api/rec_file.txt', 'w');
fwrite($file,json_encode($all_data));

fclose($file);
$pens_version         =  $_POST['pens-version'];

?>
error=0
error-text=collect
version=<?php echo $pens_version; ?>
pens-data=
<?php
他们从我下面的代码中收到了这个响应,我不知道为什么出错,错误文本版本没有被发送 ()

=================================

$all_data=$_POST;
$file = fopen('/var/www/html/api/rec_file.txt', 'w');
fwrite($file,json_encode($all_data));

fclose($file);
$pens_version         =  $_POST['pens-version'];

?>
error=0
error-text=collect
version=<?php echo $pens_version; ?>
pens-data=
<?php
$all\u data=$\u POST;
$file=fopen('/var/www/html/api/rec_file.txt',w');
fwrite($file,json_encode($all_data));
fclose($文件);
$pens_version=$_POST['pens-version'];
?>
错误=0
错误文本=收集
版本=
笔数据=

我相信您需要用JSON发送响应

header('Content-Type: application/json');
$response = array(
    'error'=>0,
    'error-text'=>'collect',
    'version'=>$_POST['pens-version'],
    'pens-data'=>''
);
echo json_encode($response);

响应需要是纯文本,如下所示

header('Content: text/plain');
echo "error=0\r\n";
echo "error-text=collect\r\n";
echo "version=1.0.0\r\n";
echo "pens-data="

在他们从您收到的响应中,我们可以看到所有预期的属性都未定义。您是否将标题“Content Type”设置为“application/json”?