Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.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
Json 如何在Joomla中添加自定义头数据_Json_Joomla_Joomla3.0 - Fatal编程技术网

Json 如何在Joomla中添加自定义头数据

Json 如何在Joomla中添加自定义头数据,json,joomla,joomla3.0,Json,Joomla,Joomla3.0,我正在尝试为android应用程序生成json响应 这是密码 $document =& JFactory::getDocument(); $document->setMimeEncoding('application/json'); $document->setCharset('utf-8'); 上面的代码运行良好。但是当我添加以下代码时,它不会生成任何响应 $temp['TOKEN'] = "abc"; $document->setHeadData($temp);

我正在尝试为android应用程序生成json响应

这是密码

$document =& JFactory::getDocument();
$document->setMimeEncoding('application/json');
$document->setCharset('utf-8');
上面的代码运行良好。但是当我添加以下代码时,它不会生成任何响应

$temp['TOKEN'] = "abc";
$document->setHeadData($temp);
我想得到同样的结果,这可以通过下面的代码实现

header('TOKEN:abc');
我不能在代码中使用
header()
方法

// For Joomla 2.5 - 4.0 (deprecated)
JResponse::setHeader('token', 'ABC');

// For Joomla 3.1+ (recommended)
$app = JFactory::getApplication();
$app->setHeader('token', 'ABC');
只需确保您没有关闭组件中的应用程序,否则它将没有机会发送这些

如果这样做,则必须手动刷新标题:

// For Joomla 2.5 - 4.0 (deprecated)
JResponse::sendHeaders();
JFactory::getApplication()->close();

// For Joomla 3.1+ (recommended)
$app->sendHeaders();
$app->close();
注:

如果页面是用
?format=json
请求的,则不必设置
JDocument
,因为应用程序使用了带有适当mime和字符集的
JDocumentJson

提示:

查看哪些有助于构建JSON响应和处理异常