作成日: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;