我知道204
表示服务器已理解该请求,但没有可用的内容。但我认为是错误的阻止开发人员返回这样的json消息:
return json_encode(array("mex" => "no content"));
我需要的是当API在标题中返回204
时返回json。在这种情况下,我不想使用200
,因为这意味着返回了内容。
404
也不恰当,因为这意味着资源不会退出。
Anyidea这样做?
这是我的代码:
http_response_code(204);
return json_encode(array("mex" => "no content"));
答案 0 :(得分:2)
你做不到。 The HTTP specification声明:
204响应绝不能包含消息体,因此总是在头字段后面的第一个空行终止。
尝试在204响应中包含内容将导致许多HTTP客户端出现故障。如果您想在回复中包含一条消息,则需要使用204以外的响应代码。