Почему я получаю ошибку 500 с моим запросом php multi curl - PullRequest
0 голосов
/ 09 февраля 2019

Мне нужно сделать 2 запроса POST к URL, которые.Я могу успешно сделать их через POSTMAN, но я не могу понять, как это правильно в PHP.

Я сканировал stackoverflow для ответов и Google, и я нашел подсказки, я также вытащил PHP-код прямоиз POSTMAN, чтобы посмотреть, смогу ли я их связатьЯ понял, что мне нужно сделать cookiejar текстового файла, потому что мне нужно сохранить тот же JSESSIONID, если у меня нет этого JESSIONID, он выдает ошибки.

<?php
function mycurl($url)
{
    $ch = curl_init();
    $cookie_file = 'C:\Pokemon\cookies.txt';

    curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file);
    curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);
    curl_setopt($ch, CURLOPT_HEADER, true);
    curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
    curl_setopt($ch, CURLOPT_VERBOSE, 1);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $result = curl_exec($ch);

    $sub = substr($result, strpos($result, "Set") , strpos($result, ";") - strpos($result, "Set"));
    echo $sub;

    curl_setopt_array($ch, array(
        CURLOPT_URL => "https://www.URL.com",
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_ENCODING => "",
        CURLOPT_MAXREDIRS => 10,
        CURLOPT_TIMEOUT => 30,
        CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
        CURLOPT_CUSTOMREQUEST => "POST",
        CURLOPT_COOKIEJAR => $cookie_file,
        CURLOPT_COOKIEFILE => $cookie_file,
        CURLOPT_POSTFIELDS => "id=A?pokemon=no?digimon=yes",
        CURLOPT_HTTPHEADER => array(
            "cache-control: no-cache",
            "content-type: application/x-www-form-urlencoded"
        ) ,
    ));

    $response2 = curl_exec($ch);
    $err = curl_error($ch);
    echo 'hi';
    echo $response2;

    if ($err)
    {
        echo "cURL Error #:" . $err;
    }
    else
    {
        echo $response2;
    }

    curl_close($ch);

}
mycurl("https://www.URL.com?id=A");

?>

Мне нужно сделать запрос POST с JESSESSIONIDя получаю от первого curl_exec.

Я получаю эту ошибку:

HTTP / 1.1 500 Внутренняя ошибка сервера Сервер: Apache-Coyote / 1.1 Тип контента: text / html; charset = utf-8 Content-Length: 2508 Дата: пт, 08 фев. 2019 23:25:31 GMT X-Cnection: закрыть HTTP Status 500 - Ошибка обработки запроса;Вложенное исключение - java.lang.NullPointerException

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...