Skip to content

Commit

Permalink
Finish 0.3.26.7
Browse files Browse the repository at this point in the history
  • Loading branch information
Tiendil committed Mar 27, 2018
2 parents f615cd7 + 6a80d8e commit 42d4bb3
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 3 deletions.
1 change: 1 addition & 0 deletions docs/source/development/development_process.rst
Original file line number Diff line number Diff line change
Expand Up @@ -48,5 +48,6 @@ Master ветка всегда содержит в себе текущую ра
- быть в виде одного патча (pull request должен содержать 1 коммит);
- быть покрыты тестами;
- не использовать устаревшую функциональность;
- применяться к ветке develop (не master!), как и положено по git-flow.

Желательно, чтобы они сопровождались документацией.
10 changes: 7 additions & 3 deletions docs/source/external_api/intro.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,19 @@

Сессии реализуются через передачу cookie с именем sessionid; в случае, если в запросе cookie не указана, сервер создаст новую сессию и вернёт соответствующее значение cookie.

Для защиты от `CSRF <http://en.wikipedia.org/wiki/Cross-site_request_forgery">`_ (так как фунционал браузерной версии также построен на API), каждый POST запрос должен иметь cookie с именем csrftoken И либо POST параметр csrfmiddlewaretoken, либо заголовок X-CSRFToken, установленные в значение этой cookie. Значение для csrftoken cookie можно установить случайное (либо значение cookie будет установлено при 1-ом запросе к API). Значение csrftoken должно быть строкой из 64 символов (0-9,a-z).
.. note::

Для защиты от `CSRF <http://en.wikipedia.org/wiki/Cross-site_request_forgery">`_ (так как фунционал браузерной версии также построен на API), каждый POST запрос должен иметь cookie с именем csrftoken И либо POST параметр csrfmiddlewaretoken, либо заголовок X-CSRFToken, установленные в значение этой cookie. Значение для csrftoken cookie можно установить случайное (либо значение cookie будет установлено при 1-ом запросе к API). Значение csrftoken должно быть строкой из 64 символов (0-9,a-z).

Кроме того, необходимо передавать заголовок `Referer: https://the-tale.org/`.

Примеры запросов на логин к локальному серверу с использованием curl:

.. code-block:: bash
curl --insecure -b "sessionid=kwc2ngq02dilu56ti76nj21z18wzaghe; csrftoken=wxiefxk7i6kvkUeyi4jU2xO0B96RwvJc" -d "email=email@gmail.com&password=11111" -H "X-CSRFToken: wxiefxk7i6kvkUeyi4jU2xO0B96RwvJc" "httpы://local.the-tale/accounts/auth/api/login?api_version=1.0&api_client=SASS-asas"
curl --insecure --referer "https://the-tale.org/" -b "sessionid=kwc2ngq02dilu56ti76nj21z18wzaghe; csrftoken=wxiefxk7i6kvkUeyi4jU2xO0B96RwvJc" -d "email=email@gmail.com&password=11111" -H "X-CSRFToken: wxiefxk7i6kvkUeyi4jU2xO0B96RwvJc" "https://local.the-tale/accounts/auth/api/login?api_version=1.0&api_client=SASS-asas"
curl --insecure -b "sessionid=kwc2ngq02dilu56ti76nj21z18wzaghe; csrftoken=wxiefxk7i6kvkUeyi4jU2xO0B96RwvJc" -d "email=email@gmail.com&password=111111&csrfmiddlewaretoken=wxiefxk7i6kvUeyi4jU2xO0B96RwvJc" "https://local.the-tale/accounts/auth/api/login?api_version=1.0&api_client=SASS-asas"
curl --insecure --referer "https://the-tale.org/" -b "sessionid=kwc2ngq02dilu56ti76nj21z18wzaghe; csrftoken=wxiefxk7i6kvkUeyi4jU2xO0B96RwvJc" -d "email=email@gmail.com&password=111111&csrfmiddlewaretoken=wxiefxk7i6kvUeyi4jU2xO0B96RwvJc" "https://local.the-tale/accounts/auth/api/login?api_version=1.0&api_client=SASS-asas"
Формат запроса
Expand Down

0 comments on commit 42d4bb3

Please sign in to comment.