Я обращаюсь к службе REST api, которая использует переменную session_id. API требует, чтобы это было сохранено в файле cookie, и я выполняю это следующим образом:
$ch = curl_init(); // initialize curl handle
curl_setopt($ch, CURLOPT_URL, $url); //set target URL
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);// allow redirects
curl_setopt($ch, CURLOPT_COOKIEFILE, './Cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, './Cookie.txt');
curl_setopt($ch, CURLOPT_POST, TRUE); // set POST method
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); //set headers
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, TRUE); //return the headers so we can get session id
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, FALSE); //prevent unverified SSL certificate error
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE); //prevent unverified SSL ""
$contents = curl_exec($ch);
curl_close($ch);
Теперь проблема заключается в том, что многие разные пользователи называют много раз. (так много разных файлов cookie должны быть сохранены). Мне бы хотелось просто сохранить session_id в переменной вместо ссылки на файл cookie. Пока все мои попытки отвергаются службой. Может ли кто-нибудь предложить методы для хранения идентификаторов сеансов и файлов cookie без сохранения их в файл? Обратите внимание, что чтение идентификатора сеанса не проблема, оно возвращается в XML. По какой-то причине передача его обратно без ссылки на фактический сгенерированный файл не передает учетные данные безопасности. Более подробная информация о том, почему это может быть, также будет полезна.