Как сделать HTTP запрос в PHP?
Всем привет! Подскажите, пожалуйста, как правильно сделать HTTP-запрос (GET, POST) на PHP? Я новичок и запутался в разных подходах.
Проблема: Нужно отправить GET-запрос к внешнему API (например, https://jsonplaceholder.typicode.com/posts/1) и получить JSON-ответ. Также нужно уметь отправлять POST-запросы с данными (например, для создания нового поста).
Что я уже пробовал:
1. Использовал file_get_contents() — он работает, но я слышал, что это не лучший способ для продакшена, особенно если нужно обрабатывать ошибки или отправлять POST.
2. Пытался использовать curl_init(), но код получился громоздким, и я не уверен, что правильно настраиваю параметры (заголовки, таймауты, обработка ошибок).
Пример моего кода (через cURL):
$ch = curl_init('https://jsonplaceholder.typicode.com/posts/1');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
if(curl_error($ch)) {
echo 'Ошибка: ' . curl_error($ch);
}
curl_close($ch);
$data = json_decode($response, true);
print_r($data);Этот код вроде работает, но я не уверен, как обрабатывать POST-запросы и как добавлять заголовки (например, Content-Type: application/json).
Что ожидаю получить: Хочу понять, какой метод лучше использовать для современных проектов — cURL, Guzzle или есть что-то более простое? Нужны примеры и для GET, и для POST с обработкой ошибок и таймаутов. Буду благодарен за простые и понятные примеры!
Ответов пока нет.
Войдите чтобы оставить ответ
Блоги