Невозможно войти в систему с ложными учетными данными
Не удается войти в систему, когда я пытаюсь зарегистрировать пользователя с помощью react 0 upvotes Анил Кумар - Лекция 42 - 31 минуту назад когда я попытался зарегистрировать пользователя с помощью react, пользователь был зарегистрирован успешно, но когда я попытался войти в систему с этими учетными данными, он показал "TypeError at /api/users/login/
".Object of type Response is not JSON serializable" но я могу войти в систему, если зарегистрирую пользователя с помощью postman,
class MyTokenObtainPairSerializer(TokenObtainPairSerializer):
def validate(self, attrs):
try:
data = super().validate(attrs)
# data['username'] = self.user.username
serializer = UserSerializerWithToken(self.user).data
for k, v in serializer.items():
data[k] = v
return data
except:
message = {'detail': f'Cannot find the user!'}
return Response(message)
#
@api_view(['POST'])
def registerUser(request):
data = request.data
try:
user = NewUser.objects.create_user(
email=data['email'],
first_name=data['first_name'],
last_name=data['last_name'],
password=data['password'],
username=data['first_name'] + data['last_name'],
is_active=True,
is_student=True,
)
serializer = UserSerializerWithToken(user, many=False)
# successMessage = "user Registered successfully!"
emailSending(user.email)
return Response(serializer.data)
except Exception as e:
message = {'detail': f'User with email: {data["email"]} already exists'}
# return Response(message, status=status.HTTP_400_BAD_REQUEST)
return Response(message)
вот код в react
export const register = (email, first_name, last_name, password) => {
return dispatch => {
dispatch(registerAuthStart());
const config = {
headers: {
'content-type': 'application/json'
}
}
const body = JSON.stringify({ email, first_name, last_name, password });
console.log(body);
// axios.post('/api/users/register/', {
// 'email': email,
// 'first_name': first_name,
// 'last_name': last_name,
// 'password': password,
// }, config)
// .then(res => {
// dispatch(registerAuthSuccess(res.data));
// })
// .catch(err => {
// console.log(err.data, 'error page');
// dispatch(registerAuthFail(err.response));
// });
axios.post('/api/users/register/', body, config)
.then(res => {
dispatch(registerAuthSuccess(res.data));
})
.catch(err => {
console.log(err.data, 'error page');
dispatch(registerAuthFail(err.response));
});
}
}
если кто-то получил решение или кто-то заинтересован лично,
https://www.linkedin.com/in/anilkumar55b6b7111/
пожалуйста, позвоните мне,
очень важно получить решение для этого, я пробовал несколько способов, но не работает
Спасибо
Я пробовал менять сериализатор, а также преобразовать в формат JSON в файле react, но все равно, но если я пытаюсь войти в систему, когда я создал пользователя в postman, он работает нормально, но даже если я даю неправильные учетные данные из postman, он показывает ту же ошибку. Пожалуйста, помогите