我想在我的 HTTP 标头中发送 json 数据。
我使用的是 Codeigniter PHP,所以我在控制器中执行了以下操作:
header('Content-Type: application/json');'
这是我的代码:
$request = array(
'request' => $_GET['request'],
'device_id' => $_GET['device_id'],
'launch_date'=> $_GET['launch_date'],
'allowed_hours'=>$_GET['allowed_hours'],
'site_id'=>$_GET['site_id'],
'product'=>$_GET['product'],
'software_version'=>$_GET['software_version'],
'platform_os'=>$_GET['platform_os'],
'platform'=>$_GET['platform'],
'platform_model'=>$_GET['platform_model']
);
$response = array(
'response_code' =>200 ,
'device_id'=>$_GET['device_id'],
'allowed_hours'=>$_GET['allowed_hours'],
'product'=>'mlc',
'prov_ur'=>NULL
);
header('Content-Type: application/json');
echo json_encode( $response );
但是当我打印标题时我得到
A PHP Error was encountered
严重性:通知
消息:未定义索引:请求
文件名:admin/license.php
线路数量:22
A PHP Error was encountered
严重性:通知
消息:未定义索引:
允许的小时数
文件名:admin/license.php
电话号码:
25
A PHP Error was encountered
严重性:通知
消息:未定义索引:
允许的小时数
文件名:admin/license.php
电话号码:
40
{“response_code”:200,“device_id”:“70D0D01FBAD2”,“allowed_hours”:空,“产品”:“mlc”,“prov_ur”:空}数组(10)
{ ["主机"]=> 字符串(14) "192.168.50.123" ["连接"]=>
字符串(10)“保持活动”[“缓存控制”] =>字符串(9)“最大年龄= 0”
[“接受”]=> 字符串(74)
“文本/html,应用程序/xhtml+xml,应用程序/xml;q=0.9,图像/webp,/;q=0.8"
[“升级不安全请求”]=> 字符串(1)“1”[“用户代理”]=>
字符串(110)“Mozilla/5.0(Windows NT 10.0;WOW64)AppleWebKit/537.36
(KHTML,如 Gecko)Chrome/47.0.2526.111 Safari/537.36"
[“接受编码”]=> 字符串(19)“gzip、deflate、sdch”
[“接受语言”]=> 字符串(14)“en-US,en;q=0.8”[“Cookie”]=>
字符串(518)
“切西斯=OhhBBhVodwwf7Tb55AVsU32ClMS5cgmxBl15WHA%2BrGnvo1kiK%2B67BWeAuJVSV2MY25zZd0riHC9cyx9fiigiBuqkPMT%2FKE9d6et%2FXaE3F7I59P9%2FEzy5byQ5nEkJq5xwXoH1I7% 2B7v62cQL21%2Bjfnk3AwIy4luM7N51IUuTqg7TxunoZFD1gJO84r8degY1imNpmDk2W%2FjsQPn9bQpkWJ9KVMxxViFDaELEU0rIfYmif%2BdvXjK9W%2Fj7iWQxZYE9ZGazgBTKlLO%2BJZH NdPrdmGPFTzTUROZdffpF%2Bb25bRMPEJsZ9CE2mdVuSn%2FEu678utd0lcd9bh%2BDbTDikrHP4jBFOLbZfWKT%2F9r5GkMBrLBl%2BlvPx9RbAq%2FIsjeA1V7c6JYf41TO1bG2XKT14QFHm8 m0qY8HCal%2B%2BR8tZe9i3zy24%3Dcfc459942e4ef82a5554257216a19d621f446a25"
["If-Modified-Since"]=> string(29) "1970 年 1 月 1 日星期四 00:00:00 GMT" }
{"response_code":200,"device_id":"70D0D01FBAD2","allowed_hours":null,"product":"mlc","prov_ur":null}
在我的回应中。我不想在 HTTP 标头响应中发送其他数据。
根据 CI 更新代码
public function index()
{
$request = array(
'request' => $this->get('request'),
'device_id' => $this->get('device_id'),
'launch_date'=> $this->get('launch_date'),
'allowed_hours'=>$this->get('allowed_hours'),
'site_id'=> $this->get('site_id'),
'product'=>$this->get('product'),
'software_version'=> $this->get('software_version'),
'platform_os'=> $this->get('platform_os'),
'platform'=> $this->get('platform'),
'platform_model'=> $this->get('platform_model')
);
$response = array(
'response_code' =>200 ,
'device_id'=> $this->get('device_id'),
'allowed_hours'=> $this->get('allowed_hours'),
'product'=>'mlc',
'prov_ur'=>NULL
);
$this->output->set_content_type('Content-Type: application/json');
return $this->output
->set_content_type('Content-Type: application/json')
->set_output(json_encode($response));
echo $response;
}