[英]I just want to return JSON error response when ever the token field is missing in headers in codeigniter
Just simply want whenever my Api is called if token is missing it should return a json response that "Token is required" i'm getting the token in headers let me explain it with sample code: 只是只要想在缺少令牌的情况下调用我的Api时,它应该返回一个json响应,提示“令牌是必需的”。
$headers = apache_request_headers();
$token = $headers['User-Token'];
if(isset($token)){
$user_details = $this->user_basic_model->get_user_by_token($token);
if (!empty($user_details))
{
$data = $this->fare_model->get_all_fare();
if (empty($data)) {
$arr = array('msg' => 'Error!', 'status_code' => 404);
echo json_encode($arr);
}
else {
$success_array = array('msg' => 'Success!', 'status_code' => 200);
echo json_encode(array_merge($data, $success_array));
}
}
else
{
$arr = array('success' => 'false', 'msg' => 'Unauthorize Request',
'status_code' => 401);
echo json_encode($arr);
}
}
else
{
$arr = array('success' => 'false', 'msg' => 'Token is required',
'status_code' => 401);
echo json_encode($arr);
}
in this case when i don't send User-Token field in headers using postman i got the response properly but with that response i'm getting an error of undefined index "User-token" i don't want this error to be shown 在这种情况下,当我没有使用邮递员在标头中发送User-Token字段时,我会正确地获得响应,但由于该响应,我收到了未定义索引“ User-token”的错误,我不希望显示此错误
just modify your code little bit. 只需稍微修改一下代码即可。
if (isset($headers['User-Token'])) {
$token = $headers['User-Token'];
if (empty($token)) {
//your code
} else {
$arr = array('success' => 'false', 'msg' => 'Token is required',
'status_code' => 401);
echo json_encode($arr);
exit();
}
} else {
$arr = array('success' => 'false', 'msg' => 'Token is required',
'status_code' => 401);
echo json_encode($arr);
exit();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.