Сказка навсегда остановлена.

Мы безмерно благодарны каждому из вас за время, которое вы подарили нашей игре, истории, которые вы создали, поддержку, которую оказывали друг другу и нам.

Надеемся, Сказка останется светлым и добрым воспоминанием в вашей жизни, и вы будете вспоминать наши приключения с улыбкой.

Это были замечательные тринадцать лет. Спасибо вам за них.

С любовью, команда Сказки.

Silent Wrangler
[​ϟ] Командор
могущество: 17420
длань судьбы
гоблин
Наивеличайший Выдумщик Генджис
131 уровня
Нашёл твою
\uhhhh 16-битовый символ Юникода в 16-ричном представлении
gichco
[^_^] Рекрут
могущество: 116

дварф Эйлиф
33 уровня
За вечер переделал старые наработки клиента на Unity. Сейчас полностью работает авторизация, написаны методы работы с API (поверх RestSharp). Остаётся только дописать классы данных и логику получения данных с сервера для преодоления мифического "базового функционала".
https://github.com/yura415/thetale-unity



Сообщение изменено
PravProduct
без гильдии
могущество: 61

дварф Торин
36 уровня
Возможно это уже обсуждалось.
Я делаю POST-запрос на логин в игру:
url: the-tale.org/<resource_path>/api/<method_name>?api_version=<method_version>&api_client=<client_id>
Параметры в body: email=<email>&password=<pass>&remember=true
Cookie: csrftoken=<токен, который возвратился из запроса /api/info/>

У меня возвращается status = 403, пишет, что csrftoken not valid и для дополнительной информации нужно включить debug режим.

Так вот как включить этот debug-режим? В справке по API что-то не нашел, хотя есть чувство, что где-то я читал об этом.

И еще вопрос. Может быть при POST запросах информацию: ?api_version=<method_version>&api_client=<client_id> тоже передавать в http body, а не в url?
Unit
[МОЛОТ] Рекрут
могущество: 3274

мужчина
Призрак Бульрога
44 уровня
каждый POST запрос должен иметь cookie с именем csrftoken И либо POST параметр csrfmiddlewaretoken, либо заголовок X-CSRFToken, установленные в значение этой cookie

Обрати внимание на И
PravProduct
без гильдии
могущество: 61

дварф Торин
36 уровня
Блин, понял, то есть и в cookie должен быть csrftoken и (csrfmiddlewaretoken or X-CSRFToken) =) Понял.

А про debug режим что-то известно кому-нибудь?
Unit
[МОЛОТ] Рекрут
могущество: 3274

мужчина
Призрак Бульрога
44 уровня
PravProduct
Блин, понял, то есть и в cookie должен быть csrftoken и (csrfmiddlewaretoken or X-CSRFToken) =) Понял.

В куки должен быть csrftoken в посте параметр csrfmiddlewaretoken и они между собою должны быть равны
Unit
[МОЛОТ] Рекрут
могущество: 3274

мужчина
Призрак Бульрога
44 уровня
PravProduct
А про debug режим что-то известно кому-нибудь?

Я полагаю, этот режим Tiendil включает когда сам чтото тестит или меняет (к примеру когда Обновление)
PravProduct
без гильдии
могущество: 61

дварф Торин
36 уровня
Unit, спасибо. Сегодня вечерком попробую.
Tiendil
[НБ] Магистр
могущество: 14696
разработчик
дварф Халлр
106 уровня
gichco
За вечер переделал старые наработки клиента на Unity.
Круто! Удачи в разработке.

Debug-режим это не для вас :-) Надо переделать эту страничку, дабы не смущать народ.
gichco
[^_^] Рекрут
могущество: 116

дварф Эйлиф
33 уровня
Tiendil
Круто! Удачи в разработке.
Спасибо :)
Эх, как же мне нравится этот JSON-подобный синтраксис при отправке запроса!
CallAsync("accounts/auth/api/login", Method.POST, new { email = email, password = password, remember = true }, callback);
Yashko
[​ϟ] Рекрут
могущество: 2446

мужчина Сандрэн
64 уровня
Не получается сделать вход в игру.
Запрос POST:
http://the-tale.org/accounts/auth/api/login?api_version=1.0&api_client=test_1.0&email=asd&password=asdasd&remember&csrfmiddlewaretoken
cookie csrftoken существует.
возвращает:
CSRF verification failed. Request aborted.

Делал кто-то уже логин по API?
Показывайте.
PravProduct
без гильдии
могущество: 61

дварф Торин
36 уровня
Получился логин.
Все просто. В куках установил значение csrftoken=<value>, а в параметрах в теле http-запроса я установил (помимо описанных параметров) csrfmiddlewaretoken=<value>, где <value> для примера я взял из запроса /api/info/
Yashko
[​ϟ] Рекрут
могущество: 2446

мужчина Сандрэн
64 уровня
Вроде все так же сделал.
Покажи исходники.
PravProduct
без гильдии
могущество: 61

дварф Торин
36 уровня
Yashko
Вроде все так же сделал.
Покажи исходники.

В личке, чтобы не спамить.
PravProduct
без гильдии
могущество: 61

дварф Торин
36 уровня
У меня такой вопрос.
1. Я выполнил логин в игру (через web api)
2. Затем я делаю обычный GET (/api/info/) без указания sessionid и csrftoken и мне возвращается "account_name": "PravProduct". Как система поняла, что это я выполнил этот GET?