Django
  • Введение
  • Установка
  • Создание проекта
  • Создание приложения
  • Администрирование
  • Создание страниц
  • Динамические страницы
  • Добавление стилей
  • Шаблоны
  • Вывод одной записи
  • AJAX
  • Взаимодействие с БД
  • Сборка на Python3
  • Формы POST запрос
  • Cookie файлы
  • Работа с пользователями
  • Связь в моделях
  • PostgreSQL + JSON
  • Отключение csrf
Powered by GitBook
On this page

Was this helpful?

Cookie файлы

Код на HTML странице для отправки запросов на сервер

<p>Значение cookie</p>
<input id = "tttt" type = "text">
<button onclick = "setIt()">Задать значение</button>
<br>
<br>
<button onclick = "deleteIt()">Удалить cookie</button>
<br>
<br>
<button onclick = "getIt()">Получить значение cookie</button>

<script>
    "use strict";

    function sendQueryToServer(query) {
        let r = new XMLHttpRequest();
        r.open("GET", query, true);
        r.setRequestHeader("Content-Type","text/plain;charset=UTF-8");
        r.send(null);
        r.onreadystatechange = function()
        {
            if(r.readyState === 4 && r.status === 200) {
                alert(r.responseText + "");
            }
        }
    }

    function setIt() {
        const value = document.getElementById("tttt").value.toString();
        sendQueryToServer("/my_cookie_set?xxx=" + value);
    }

    function deleteIt() {
        sendQueryToServer("/my_cookie_delete/");
    }

    function getIt() {
        sendQueryToServer("/my_cookie_get/");
    }
</script>

В файле urls.py прописываем урлы для обработки запросов

url(r'^my_cookie_set/', views.my_cookie_set, name='my_cookie_set'),
url(r'^my_cookie_delete/', views.my_cookie_delete, name='my_cookie_delete'),
url(r'^my_cookie_get/', views.my_cookie_get, name='my_cookie_get'),

В файле views.py прописываем обработчики запросов

def my_cookie_set(request):
    request.session["my_cookie_variable"] = str(request.GET['xxx'])
    return HttpResponse("Значение куки успешно задано")

def my_cookie_delete(request):
    if ("my_cookie_variable" in request.session) == False:
        return HttpResponse(str("Куки НЕ существует"))
    else:
        request.session.pop("my_cookie_variable")
        return HttpResponse(str("Куки успешно удалена"))


def my_cookie_get(request):
    if ("my_cookie_variable" in request.session) == False:
        return HttpResponse(str("Куки НЕ существует"))
    else:
        value = request.session["my_cookie_variable"]
        return HttpResponse("Значение куки: " + str(value))

Запускаем сервер

gunicorn maxim_project.wsgi
PreviousФормы POST запросNextРабота с пользователями

Last updated 5 years ago

Was this helpful?