Я использую Angular в качестве внешнего интерфейса и Django в качестве внутреннего. При извлечении вошедшего в систему пользователя наблюдается небольшое отставание или «мерцание» в имени пользователя, отображаемом в верхнем меню, из-за того, что Angular вынужден запрашивать данные у пользовательского интерфейса после получения токена и ждать обещания вернуть пользовательские данные.
Для аутентификации и входа в систему я использую django rest framework:
url(r'^token-auth/', obtain_auth_token)
Это возвращает токен - все работает хорошо, и я вошел в систему. Но этот вызов не возвращает никаких пользовательских данных, поэтому для решения этой проблемы я создал отдельное представление API, которое возвращает пользователя. Служба в Angular запускается для получения пользовательских данных непосредственно после получения токена.
Но для этого Angular должен вызывать пользовательское представление отдельно, а это, в свою очередь, может привести к «задержке» в способе, которым пользовательские данные не загружаются мгновенно в меню при входе в систему (потому что Angular должен снова получать пользовательские данные , после получения токена пользователя при первом звонке).
Это заставило меня задуматься, каков наилучший способ получить данные для входа в систему после получения токена и «входа в систему»? Есть ли лучший способ сделать это?
Или, если это правильный способ сделать это, может быть, я должен просто обработать загрузку данных в меню по-другому?