Comments 8
11.34 можно было использовать сокращённые массивы, но этот PR добавляет возможность задавать строку в качестве тела ответа или целое число для статус-кода.
В Ларе с этим есть проблемы. Статусом будет считаться число от 100 до 599 включительно. Всё остальное будет возвращено как тело ответа с кодом 200, а ещё 204
вернёт no content со статусом 204, а ‘204’
- вернёт текст «204» со статусом 200 😀
Обсуждения были в ветке с https://github.com/laravel/framework/pull/53663
Http::fake([
'google.com' => 'Hello World', // no problem
'github.com' => ['foo' => 'bar'], // no problem
'bar.laravel.com' => '204', // it's a response body with status code 200
'foo.laravel.com' => 99, // it's a response body with status code 200
'foo.laravel.com' => 100, // it's a status code 100
'foo.laravel.com' => 204, // it's a status code 204
'foo.laravel.com' => 204.99, // it's a response body with status code 200
'foo.laravel.com' => 599, // it's a status code 599
'foo.laravel.com' => 600, // it's a response body with status code 200
]);
Ну так все логично же вроде
Разве? Далеко ходить не будем:
Http::fake([
'local1' => 99,
'local2' => 100,
'local3' => "100",
'local4' => 204,
'local5' => 204.01,
]);
$response = Http::get('local1');
$response->status; // 200
$response->body(); // 99
$response = Http::get('local2');
$response->status; // 100
$response->body(); // ""
$response = Http::get('local3');
$response->status; // 200
$response->body(); // 100
$response = Http::get('local4');
$response->status; // 204
$response->body(); // No Content
$response = Http::get('local5');
$response->status; // 200
$response->body(); // 204.01
Логично? :)
Я так и не понял в чем претензия
Где можно - значение трактуется как хттп-код, где нельзя - как тело с кодом 200
В чем тут нелогичность-то?
Тут в ваших руках управлять этими шорткатами и если вы толкаете в значения херню, то и на выходе получаете херню, все очень просто
Замените магические числа на константы вида Response::NO_CONTENT и все сразу станет предельно ясно
Дайджест новостей по PHP, Laravel и Symfony за декабрь'2024