Вопрос

Используя Snoopy, я делаю запрос, но кажется, что для поста используется другой сеанс? Когда я повторяю результаты запроса, установлен сеанс, но после нажатия на любую ссылку страница возвращается в состояние не сессии.

В настоящее время я использую этот код, чтобы сделать запрос

$dashboard = new Snoopy;

$dashboard->referer = "URL";
$dashboard->httpmethod = "POST";
$dashboard->submit("URL", $_POST);

echo $dashboard->results;

У меня нет возможности использовать Curl, так как у меня нет управления сервером.

У меня есть ощущение, что это из -за того, что Snoopy делает новый session_id для http post? Я видел биты, но ничего конкретного о том, как поддерживать сеанс между этими запросами?

Это было полезно?

Решение

Если вы не перенесете SessionId на страницу, которую вы звоните Snoopy (Это было бы верно для любого другого способа выполнения этого HTTP -запроса), затем, при генерации этой страницы, PHP будет:

  • Попробуйте начать сеанс
  • Поскольку идентификатор сеанса не был получен, будет запущена новая сессия
  • который будет отличаться от того, что используется в вашем первом сценарии.


Если вы хотите, чтобы оба сценария поделились одним и тем же сеансом, вам, по крайней мере, вам придется передать идентификатор сеанса во второй сценарий, который обычно выполняется с помощью cookie (Смотрите файлы cookie, которые у вас есть для вашего сайта, в вашем браузере).

В основном: сценарий, который называется через Snoopy, должен получить идентификатор сеанса, так же, как сценарий, который его получает браузер.

Другие советы

Вам нужно позвонить session_start Функция при отправке файла URL.

Таким образом, сеанс может поддерживать так, как вы хотите.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top