Ошибка 500 при парсинге сайта curl
$data = array(
'data_first' => $val_first,
'data_second' => $val_second,
);
curl_setopt($ch, CURLOPT_URL, 'https://test.ru'); // https://test.ru - пример
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$response = curl_exec($ch);
echo $response;
Проблема в том, когда я отсылаю данные, test.ru возвращает ошибку 500. Сама страница рабочая и если в $data будет ошибка, то валидатор поправит, а если всё корректно, то возвращает ошибку 500. Сайт test.ru на laravel.
Ответы (2 шт):
Автор решения: Andrii Polyvianyi
→ Ссылка
csrf token нету в параметрах. Для получение токена попробуйте сначала отправить GET запрос и вытащить с header
<meta name="csrf-token" content="{{ csrf_token() }}">
После этого отправьте POST запрос
Автор решения: Asen123
→ Ссылка
Проблема была в $data, я отсылал строку, а сервер требовал число. Глупая ошибка, спасибо всем кто уделил время.