Дано:
Django rest framework + vue.js
Авторизация через токен
'DEFAULT_AUTHENTICATION_CLASSES': (
'rest_framework.authentication.TokenAuthentication',
),
Нужно:
Что бы запросы к API проходили либо только в рамках моего сайта (фронтенд обращается что бы показывать контент), либо извне, но с ключом
Я пробовал создавать свой PERMISSION_CLASS , который проверяет авторизован ли пользователь, либо что запрос идет с локалхоста:
class IsLochalhostOrAuth(BasePermission):
def has_permission(self, request, view):
if request.user and request.user.is_authenticated:
return True
ip = request.META['REMOTE_ADDR']
if ip in REST_SAFE_LIST_IPS:
return True
return False
Но такой вариант не проходит на серваке, т.к не приходит REMOTE_ADDR