Понятия
Игроки и сессии
Копировать страницу
Каждый человек приходит, авторизованный как игрок вашего приложения, с идентификатором, который существует только для вашего приложения. Сессионные токены позволяют вашему серверу определить, кто запрашивает.
#Игроки
Люди никогда не входят в ваше приложение: Lia делает это за них. В первый раз, когда кто-то открывает ваше приложение, Lia делает их игрок из него. Lia.init() дает вам:
{
"player": { "id": "p_3f9c0a6d1b2e4f5a6b7c", "name": "amara" },
"session": "lias_eyJhcHAiOi…",
"exp": 1761998400000,
"mode": "live"
}player.idявляется этим человеком'id в вашем приложении. Остается неизменным каждый раз, когда они открывают его, на любом телефоне. Он'ваша анонимность: это'только для вашей приложения, никогда не их Lia аккаунт, и другое приложение получает другой id для того же человека. Используйте его как ключ для всего, что вы храните о игроке.player.nameявляется их Lia именем пользователя, без @. Это'ваша публичная информация и может меняться; Lia поддерживает ее актуальной каждый раз, когда вы открываете ваше приложение. Показывайте ее, но не'не вводить ничего на нем.
Lia никогда не дает вашему приложению человека'электронная почта, номер телефона, баланс или что-либо еще о их учетной записи.
#Сессии
Ваша страница может'не доказать, кто это вашему серверу: любой может отправить вашему серверу запрос, который утверждает, что является любым игроком. Поэтому Lia предоставляет вашей странице сессионный токен, подписано Lia, которое ваш сервер проверяет с помощью Lia.
Lia.init()отвечает сsessionи когда он заканчивается,exp(миллисекунды с 1970).- Сессия длится 15 минут. Получите новый с помощью
Lia.session()когда вам нужно; оно отвечает{ session, exp }. - Сессия называет ваше приложение, игрока и режим (тестовый или живой). Токен из другого приложения, из другого режима или просроченный недействителен.
// In your page: send a fresh session with anything your server must trust.
const { session } = await Lia.session();
await fetch("/api/claim", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ session, chargeId }),
});Ваш сервер отправляет токен на POST /session/verify с вашим секретным ключом и получает обратно id игрока:
{ "valid": true, "playerId": "p_3f9c0a6d1b2e4f5a6b7c", "mode": "live", "exp": 1761998400000 }#Режимы
Каждая сессия находится в одном режим, test или live, и каждый ключ такой же. Тестовый ключ проверяет только тестовые сессии, а живой ключ — только живые. См. Тест и живой.
#Lia'свои записи о игроке
Некоторые вещи Lia сохраняет на уровне игрока в вашем приложении, поэтому вы не'не нужно сервер для них:
- Их лучший счет и разместите на вашем рейтинг.
- Их облачное хранилище: до 1024 ключей.
- Они разрешили ваши уведомления.
- Их оплачивает, вознаграждения и просмотренные видео, которое ваш сервер может найти.
Автоматически переведено. Английский — источник истины. Читать на английском