Поддерживает ли Unity сессии PHP? - PullRequest
2 голосов
/ 27 мая 2019

Кто-нибудь знает, поддерживает ли Unity сессии PHP?

Например, допустим, что пользователь входит в свою учетную запись в Unity и передает информацию для входа в систему через поток WWW.После входа в систему я назначаю переменную сеанса в своем php-скрипте: $_SESSION['name]=name.

Мой вопрос: когда пользователь придет, чтобы отправить еще один запрос через Unity, сможет ли клиент по-прежнему иметь доступ к переменной сеанса?

1 Ответ

2 голосов
/ 27 мая 2019

Данные сеанса - это данные из базы данных, связанной с идентификатором, который используется при обмене данными между клиентом и сервером. Обычно печенье.

Не могу сказать наверняка, но я очень верю, что класс WWW будет игнорировать / забывать куки.

  1. Unity отправляет запрос (только с определенными вами данными) в PHP
  2. PHP устанавливает cookie, соответствующий этой сессии, и отвечает на запрос
  3. Unity получает ответ с заголовками (и куки в заголовках)
  4. Повторите

ПОЖАЛУЙСТА, ОБРАТИТЕ ВНИМАНИЕ: я не проверял это, это теоретические, но образованные догадки.


Предлагаемое решение

Вы можете установить заголовки в вашем запросе, который вы строите в Unity. Если вы сохраняете заголовки из ответа и каждый раз добавляете их в запрос, вы должны иметь возможность эмулировать искомое поведение. Итак, в основном:

  1. Unity отправляет запрос (с заголовками = previousResponseHeaders) в PHP
  2. PHP читает заголовки и подключает ваш куки-файл к предыдущему сеансу и отвечает на запрос
  3. Unity получает ответ с заголовками (и куки в заголовках)
  4. Повторите

Вы устанавливаете заголовки, делая что-то вроде this :

var headers = new Dictionary<string,string>();
headers.Add("Cookie", "key=value; semicolon=separated");
WWW www = new WWW("https://example.com", null, headers);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...