Итак, я пытаюсь сохранить декодированный объект JSON в связанном сеансе Apache.Это мой код:
$url="https://apilink";
$content = get($url);
die "Can't Get $url" if (! defined $content);
$jsonOb = decode_json($content);
%aprecords = %$jsonOb;
#Push the jsonOb in the session
$session{apirecords} = \%aprecords ;
$session{apirecords}
не хранит ссылку %aprecords
.Хотя, когда я заменяю оператор на $session{apirecords} = \%jsonOb ;
, он сохраняет apirecords
в таблице сеансов, но ссылка на% jsonOb не имеет значений.
PS: я пробовал следующее, но ни одно из нихкажется, работает: 1) $session{apirecords} = \%$jsonOb ;
2) $session{apirecords} = { %aprecords } ;
Объект JSON идеально структурирован.
Код для привязки сеанса:
tie %session, "Apache::Session::MySQL", $sessionID,
{
Handle => $dbObject,
LockHandle => $dbObject,
TableName => 'sessions',
};
#If a session ID doesn't exist, create a new session and get new session ID
if (!defined ($sessionID)){
$sessionID = $session{_session_id};
$session{count}=0;
}
Рука помощи очень ценится!
Образец JSON: https://jsonblob.com/feed3bba-f1cd-11e8-9450-2904e8ecf943