Я разрабатываю приложение, которое делает удаленный вход, среди прочего, через cURL.
На удаленном сайте выдается файл cookie сеанса, который я могу хранить в своем банке cookie.
Я хочу, чтобы каждый пользователь моего сайта имел уникальный сеанс на удаленном сайте. Мое приложение отлично работает с одним пользователем (мной), но я не уверен, как сделать его многопользовательским.
Моя первая мысль – установить переменную сеанса для моих пользователей приложения, а затем использовать эту переменную в качестве имени кука-файла, но это кажется уродливым.
Есть ли встроенная функция PHP / cURL, которая будет передавать уникальный сеанс с удаленного сервера моим пользователям?
Большое спасибо за любую помощь.
разъем
В вашем вопросе есть каждый элемент решения, а именно cookie jar и сеансы.
Когда вы предоставляете файл cookie файла cookie в CURL, просто укажите ему имя в соответствии с вашим пользователем, например:
$protected_cookie_dir='/cookies/'; $uid=getUser()->id; // get the user id curl_set_opt($ch,CURLOPT_COOKIEFILE,$protected_cookie_dir.'file_'.$uid.'.data'); curl_set_opt($ch,CURLOPT_COOKIEJAR,$protected_cookie_dir.'jar_'.$uid.'.data');
Важно: не забудьте скрыть эту папку (возможно, сохраните ее за пределами корневого каталога документа).