PHP Curl получить JWT в заголовках - PullRequest
1 голос
/ 01 апреля 2019

У меня есть запрос на отдых, я использовал curl для php, но мне нужно получить ответ JWT, который приходит в заголовках, чтобы сделать новый запрос, подписанный JWT, без необходимости повторного входа в систему.каждый раз, когда я делаю запрос, API возвращает новый JWT, чтобы сделать другой, но я не знаю, как получить его из curl, кто-то знает, как?

Ответы [ 2 ]

0 голосов
/ 01 апреля 2019

Вы должны знать имя элемента заголовка, эта функция возвращает ассоциацию.массив, вы должны только написать имя вашего заголовка ответа JWT.

...
$response = curl_exec($ch);

$headers = get_headers_from_curl_response($response);

function get_headers_from_curl_response($response)
{
    $headers = array();

    $header_text = substr($response, 0, strpos($response, "\r\n\r\n"));

    foreach (explode("\r\n", $header_text) as $i => $line)
        if ($i === 0)
            $headers['http_code'] = $line;
        else
        {
            list ($key, $value) = explode(': ', $line);

            $headers[$key] = $value;
        }

    return $headers;
}

Эта функция создает массив из ответа CURL.

Конечной переменной будет эта

$myJWT = $headers['CUSTOM_HEADER_NAME_OF_JWT'];
0 голосов
/ 01 апреля 2019

мне нужно включить CURLOPT_HEADER => true в моем массиве

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