#php #session #mobile
#php #сессия #Мобильный
Вопрос:
Я разрабатываю приложение, которое будет взаимодействовать с мобильным приложением. Моя проблема заключается в следующем — мое мобильное приложение не принимает никаких данных сеанса — нет переменных $ _GET, нет файлов cookie — вся связь с обеих сторон осуществляется с помощью xml, и я не могу изменить это, например, добавив некоторые параметры в xml, потому что мобильное приложение их не поймет. Теперь я хотел бы использовать сеансы php — мобильное приложение отправляет мне уникальный идентификатор, который я могу использовать в качестве ключа сеанса. Будет ли это работать обычным способом, например, установив некоторую переменную в массиве $ _SESSION, а затем извлекая их в следующем запросе?
ps. Я не могу использовать базу данных или файлы…
Ответ №1:
Вы можете использовать session_id()
функцию для извлечения идентификатора сеанса PHP и каким-то образом включить его в XML, который вы отправляете на устройство, а затем на другом конце вы можете извлечь уникальный идентификатор, вызвать session_id({unique_parameter});
, чтобы установить идентификатор сеанса, а затем вызвать session_start();
, и все должно быть готово.
Комментарии:
1. Да, я знаю, что могу отправить этот идентификатор в свое мобильное приложение, и на самом деле — я делаю это для других целей, использующих php-сессию, так что это не проблема — мне просто интересно, нужно ли мне отправлять некоторые другие данные (которые php отправляет по умолчанию при работе с веб-браузером) туда и обратно, чтобы мой сервер понял, что это один и тот же сеанс, или будет достаточно отправить только этот идентификатор? Вы говорите, что это сработает, но прежде чем принять ваш ответ, я немного подожду — может быть, кто-нибудь скажет мне, что это не сработает, и объяснит почему :).
2. Будьте уверены, это сработает (при условии, что вы позвоните
session_id('the_id');
раньшеsession_start();
.