Запретить пользователю с сеансом вводить URL-адрес в браузере и получить доступ к данным в Python Django приложении - PullRequest
0 голосов
/ 09 мая 2020

У меня есть веб-приложение Python Django. В методе Get как запретить пользователю вводить URL-адрес и получать доступ к данным. Как узнать, по какой ссылке открывается код или браузер. Я пробовал с sessionid в Cook ie, но если сеанс существует, он позволяет получить доступ к данным. Спасибо.

Ответы [ 3 ]

0 голосов
/ 09 мая 2020

Чтобы определить, исходит ли запрос от браузера, вы можете проверить заголовок HTTP_USER_AGENT

request.META.get("HTTP_USER_AGENT")

0 голосов
/ 09 мая 2020

Я добиваюсь этого, если «HTTP_REFERER» не находится в запросе. META:

его не существует при прямом обращении к URL-адресу браузера.

0 голосов
/ 09 мая 2020

Если вы хотите, чтобы они имели доступ только к определенным страницам после входа в систему, вы можете использовать

@login_required

выше def в представлениях.

например:

from django.contrib.auth.decorators import login_required

@login_required
def index(request):
    return render(request, 'enrolment/index.html')

Если вы ищете более общее решение, я не очень сожалею

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...