
Dmitry
22.03.2018
22:13:32
второй - недавний известный, rm -rf
второй, просто рукалицо, руки отрывать за такое.

akaSybe
22.03.2018
22:21:38
спасибо за выступления на Moscow Meetup

Google

Kirill
22.03.2018
22:21:54
И за организацию
Организация супер

Sergei
22.03.2018
22:22:09

Илья
22.03.2018
22:22:26
ну вот я уже на записи нашел, да
а на оф. сайте нету. посмотрел бы чо там за вакансии

Stanislav
22.03.2018
22:26:26

Maksim
22.03.2018
22:28:54
а слайды докладов будут?

Stanislav
22.03.2018
22:29:35

Maksim
22.03.2018
22:31:37
спикеры устанут всем отвечать, може это организаторам сделать проще и пошарить тут?)

Dmitry
22.03.2018
22:33:09
парни, а кто-то на vue@cli проекты запускал уже? Норм или слишком сыро? Мне в принципе вряд ли что-то подключать понадобится

akaSybe
22.03.2018
22:34:03
норм
cli же просто генерит темплейт проекта, там по идее нечему быть сырым

Google

Max
22.03.2018
22:35:32
коллеги, кто из вас делал серьёзное SPA с авторизацией и прочими прибабасами?
нужен совет

akaSybe
22.03.2018
22:35:58
на первом ангуляре имел опыт

Max
22.03.2018
22:36:06
есть мастадонты неспящие?)

Kirill
22.03.2018
22:36:38

Dmitry
22.03.2018
22:36:42

akaSybe
22.03.2018
22:37:03

Sergey
22.03.2018
22:37:27

Max
22.03.2018
22:37:55
у нас на проекте SPA, я до этого приложения с авторизацией не делал, с токенами первый раз знаком, тут поэтому совет нужен)

Sergey
22.03.2018
22:39:18
Получаешь на сервере токен, потом в хедер его

Max
22.03.2018
22:42:16
в общем, я сделал входное окно, которое по дэфолту отправляет на регистрацию или авторизацию, после регистрации или авторизации приложение даёт доступ к интерфейсу (внутри флаг переключаю, после получения прав доступа), в приложении нужно проверять токен, который я в LocalStorage записываю, проверка идёт в каждом компоненте в худе created, возможно лучше эту проверку сделать в хуках роутинга, если токен протухает, то удаляю его и флаг автоматически переключается на редирект к форме входа/авторизации
кто как делал?
поделитесь опытом

akaSybe
22.03.2018
22:43:02
точно не в компонентах

Max
22.03.2018
22:43:35

akaSybe
22.03.2018
22:43:37
хук роутинга - самое нормальное место

Max
22.03.2018
22:45:12
такой момент, если рефрешу страницу, то срабатывает дэфолтный редирект на страницу авторизации, туплю и не могу врубить как оставлять пользователя на странице роута, где он сделал рефреш, если токен не протух

The
22.03.2018
22:46:12
https://github.com/auth0-blog/vue-jwt-authentication/tree/master/src
я вот так делал, тут все есть, и goto после авторизации прочее.

Google

Max
22.03.2018
22:47:14
Спасибо)

Sergey
22.03.2018
22:48:02
В проекте с jwt перед монтированием Vue вызываются проверки...

Max
22.03.2018
22:48:04
я после авторизации пушу в роутинг страницу стартового отображения самого приложения, если права доступа получены

Sergey
22.03.2018
22:49:41
До вызова экземпляра

akaSybe
22.03.2018
22:51:48
у вью дока вообще отличная

Max
22.03.2018
22:51:52
а взять пример, у меня 3 роута: about, prices, contakts, вход в приложение на страницу about, но на странице prices я сделал рефреш страницы и меня перекидывает на страницу входа в приложение - about, как сохранить стэйт в роутинге, чтоб остаться в том же месте после рефреша?)

akaSybe
22.03.2018
22:51:56
там почти все распространенные кейсы расписаны

Max
22.03.2018
22:53:41

akaSybe
22.03.2018
22:53:56
вот, у Vuex есть initial state
ты в него должен поместить свой токен из локал сторэджа, если я правильно думаю

akaSybe
22.03.2018
22:54:42
точнее даже не токен, а флаг authenticated

Sergey
22.03.2018
22:54:54

Max
22.03.2018
22:54:58

akaSybe
22.03.2018
22:55:24
под рефрешем ты понимаешь ctrl+R?

Max
22.03.2018
22:55:28
флаг при рефреше сбрасывается

Sergey
22.03.2018
22:56:16

akaSybe
22.03.2018
22:56:26
так при рефреше страницы у тебя весь javascript запускается снова, и у тебя происходит инициализация vue приложения, инициализируется store

Google

Max
22.03.2018
22:56:56
я флаг меняю при авторизации/регистрации, чтоб получить доступ к приложению, а потом ещё делаю запрос за данными юзера, отправляя токен по API

akaSybe
22.03.2018
22:57:59
ты немного запутался)

Max
22.03.2018
22:58:15

Sergey
22.03.2018
22:58:39

Max
22.03.2018
22:58:52
можно я опишу логику, а потом вы меня поправите?)

Sergey
22.03.2018
22:59:24

Max
22.03.2018
22:59:50
описываю логику, а потом скорректируйте меня)

Admin
ERROR: S client not available

Sergey
22.03.2018
23:00:50
Получил правду и продолжаешь запрашивать данные, если просто


Max
22.03.2018
23:05:24
1) при входе в приложение идёт проверка токена в LocalStorage, если там есть токен, то отправляю его бэку по урлу, а там бэк разруливает - протух или нет токен, если не протух, то отдаёт 200 и я открываю приложения, дальше делаю запрос с токеном за данными пользователя, чтоб прогрузить их в приложение, если токен протух или его нет, то отправляю на авторизацию/регистрацию;
2) авторизация/регистрация - тут запрос прав доступа, если всё прошло успешно, то приходит 200, приложение открывается, токен сохраняется в LocalStorage, потом запрос за данными пользователя с токеном по урлу, данные приходят - приложение оживает с данными;
3) пользователь перемещается внутри приложения - я в хуках роутинге поверяю токен и по нему запрашиваю данные пользователя, если они нужны, если токен протух, то цикл входа повторяется;
можно токен сохранять во Vuex, и к LocalStorage обращаться, если только во Vuex токена нет
но задача такая, когда нажимаю F5, то идёт проверка токена, если его нет, то на страницу авторизация/регистрация, если он есть, то на стартовую страницу входа в приложение, а если я F5 нажал не на стартовой странице, то хочу после рефреша страницы остаться на этой же страницы, но меня перекидывает на стартовую
как исправить поведения роутинге в таком случае?


akaSybe
22.03.2018
23:10:16
в первом сообщении ты все правильно расписал

Max
22.03.2018
23:10:42

Sergey
22.03.2018
23:11:23
Зачем если его нет регистрация строго?

Max
22.03.2018
23:12:08

akaSybe
22.03.2018
23:12:13

Sergey
22.03.2018
23:12:15
Если его нет и находишься в личном кабинете каком-то , то да

Google

Max
22.03.2018
23:14:07
но есть и страница prices, на которой я нажал F5, и происходит рефреш страницы, токен есть, соответственно меня перекидывает на страницу входа в приложение - about, а нужно сохранить состояние роутинга
может в хуке компонента beforeDestroy сохранять в LocalStorage url?) но вроде как велосипедом пахнет)))

Roman
22.03.2018
23:17:03
приветы!

Sergey
22.03.2018
23:17:21
Ты че . Зачем Урал сохранять?

Max
22.03.2018
23:17:22

Sergey
22.03.2018
23:17:30
Url

Roman
22.03.2018
23:17:35
new Vue({
el: '#windows',
data: {
windows: {},
newUrl: ''
},
methods: {
addWindow: () => {
this.windows.push({
url: this.newUrl
});
this.newUrl = '';
},
removeWindow: () => {
}
}
});
не вижу this.windows - почему?
за вуе сижу 15 минут

Max
22.03.2018
23:17:45

akaSybe
22.03.2018
23:18:52

Sergey
22.03.2018
23:18:54
Во первых: что у тебя в this.$route ?

Max
22.03.2018
23:19:26

Roman
22.03.2018
23:19:26
спасибо!
в объект то пуш делать

Sergey
22.03.2018
23:19:40
Во вторых, не надо все Приложение переадресовывать. Ты сам и ответил

Max
22.03.2018
23:19:43
у приложения есть урл входа, при получении прав доступа