Я хочу реализовать самую основную аутентификацию в своем приложении django-rest-framework, и я продолжаю получать {"detail": "Invalid username/password."} Response (иногда 401, а иногда и 403).django rest framework - ошибка при базовой аутентификации
Вот мой UserViewSet код:
class UserViewSet(mixins.CreateModelMixin,
mixins.RetrieveModelMixin,
mixins.ListModelMixin,
viewsets.GenericViewSet):
queryset = User.objects.all()
serializer_class = UserSerializer
permission_classes = (permissions.IsAuthenticated,)
В settings.py я не имею ничего об аутентификации, только материал по умолчанию.
мой андроид код:
getUsers = new HttpGet("http://10.100.102.10:8000/users/");
String basicAuth = "Basic " + Base64.encodeToString("testingUser:123".getBytes(), Base64.NO_WRAP);
getUsers.setHeader("Authorization", basicAuth);
// executing the request
response = httpClient.execute((HttpUriRequest) request);
result = EntityUtils.toString(response.getEntity());
responseCode = response.getStatusLine().getStatusCode();
Пользователь не существует в базе данных - как вы можете видеть на скриншоте.
Я добавляю снимок экрана json, который я получаю с URL-адреса http://10.100.102.10:8000/users/ в браузере (после того как я удалил allow_classes = (permissions.IsAuthenticated)), что означает, что каждый может получить доступ).
Это UserSerializer:
class UserSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = User
fields = ('username', 'first_name', 'last_name',)
def create(self, validated_data):
user = User.objects.create_user(
first_name = validated_data['first_name'],
last_name = validated_data['last_name'],
username = validated_data['username'],
password = validated_data['password'],
)
return user
Что случилось с моим кодом? по какой-либо причине это не работает?
спасибо!