作成日:2019-06-07, 更新日:2019-06-07
経緯
・APIで各レスポンスでHTTPコードとボディを色々とセット
・テストすると「HTTPコード:204」のときのみボディが空っぽになる。
・あちこちログを仕込んだりしてみても不審な点は無し
ふと気づいたのが「204」は「No Content」ってヤツ。
レスポンスボディが空っぽになるのが正解っぽい。
→テストに使っていたブラウザがChromeなので、Chrome側が勝手にしたのかもしれない
▼API側の出力部のサンプル
$code = 204;
$response = array(
〇〇〇 => 〇〇〇,
〇〇〇 => 〇〇〇,
);
$response_body = json_encode($response);
http_response_code($code);
header('Cache-Control: no-cache');
header('Content-Type: application/json;charset=UTF-8');
header('Content-Length: ' . strlen($response_body) );
echo $response_body;
exit;