2015-05-07 4 views
3

Я использую sails.js в качестве backend/API и угловых js как интерфейс.sails.js + passport.js req.user undefined

Сервер и клиент находятся в другом домене.

Когда я аутентифицирую своего пользователя с паспортом, я устанавливаю сеанс парусов с пользовательским объектом.

Затем, когда я аутентифицирован, и я начинаю новый запрос из моего списка, чтобы перечислить продукты, на моем сервере (sails.js) req.user не определен, и в моей сессии нет пользователя, которого я создал.

Как я могу решить эту проблему? Я хотел бы настроить текущего пользователя в качестве сеанса на моем сервере, чтобы избежать его получения каждый раз с идентификатором. У меня будет более высокая производительность.

Любые идеи?

Спасибо,

ответ

2

Хорошо, я нашел ответ.

Вам нужно добавить эту строку в angularjs app.js

$ httpProvider.defaults.withCredentials = истина;

Thanks

+0

, это сработало для меня, спасибо. – leotesta

1

При входе/регистрация возвращает пользовательские данные API вместо использования сезонов.

+0

Это означает, что мне нужно будет отправить объект пользователя для всех запросов? Я думаю, что это плохо для производительности. Я уже отправляю идентификатор. Тогда я мог бы выполнить user.findone .... Но есть ли решение сохранить объект в сеансах? Паруса запущены. Он должен держать объект в сеансах. Нет? – ameilland

+0

Для запроса на вход вы должны передать учетные данные и вернуть токен/данные пользователя + токен. Теперь, когда вы хотите сделать запрос, используйте токен. Таким образом, вам не придется передавать учетные данные каждый раз. У вас должен быть доступный токен доступа в паспортной коллекции для каждого пользователя –

Смежные вопросы