Аутентификация пользователей в приложении BackBone + Django
До сих пор планировалось использовать Backbone JS во внешнем интерфейсе и Django с Rest API, работающим во внутреннем. Но когда дело доходит до аутентификации пользователей, я ничего не понимаю. Я понятия не имею, как люди делают это с Rest API.
Когда я попытался погуглить, это меня испугало. Я имею в виду, что это не невозможно, но поскольку у меня есть ограничение по времени, чтобы закончить его за неделю, я предпочел не делать этого таким образом.
Мне все время было интересно, как это сделать. Вещи, о которых я должен позаботиться, - это проверка пользователя и отображение его / ее контента ему, а не всем.
Аутентификация Rest API может быть выполнена. Но нужно разобраться с вызовами из Backbone JS. Это немного сложно. Это включает в себя пользовательские вызовы AJAX, а это означает, что мне нужно выяснить, как работает AJAX, и это занимает больше времени.
Мне становилось все труднее найти выход. Эта ситуация сохранялась до тех пор, пока я не погуглил о создании приложений с помощью backbone и django.
Я нашел эту замечательную статью в блоге, написанную разработчиком из компании, которая использовала Django и Backbone при создании своего продукта. Их стек продуктов гласил:
Мы используем традиционные представления Django в нескольких местах, таких как вход в систему, выход из системы и профили пользователей, но остальные представления обрабатываются внешним интерфейсом.
Ух ты. Разве это не отличная идея. Почему бы нам не воспользоваться преимуществами Django, если мы все равно его используем.
Поэтому я начал строить его таким образом. После копирования интерфейсных файлов (HTML и JS) в каталог Django я обнаружил, что к ним нельзя обращаться напрямую из браузера. Нам нужна реализация статических файлов() для обслуживания файлов JS, а доступ к файлам HTML можно получить из представления, подобного этому.
Поверьте мне, получить доступ к HTML-файлу через статические файлы сложно. Я потратил около того, чтобы добиться этого, и от этой идеи пришлось отказаться напрасно.
Итак, поток такой. Получите доступ к index.html, для этого требуется авторизация. Перенаправляет вас на страницу входа, если вы не вошли в систему. Перенаправляет обратно на index.html, который запускает код Backbone JS для выполнения определенных действий.
Вход, выход и регистрация — это представления Django. После входа в систему запускается Backbone JS и выполняет вызовы Rest.
Речь идет об аутентификации пользователя в приложении, которое я пытаюсь создать.
Кроме того, я записал этот день (если вы читаете его 7 июля 2016 г.) о том, как прошел этот день и какие ошибки я могу исправить, чтобы завтра быть более продуктивным.
Продолжайте взламывать!