@angular_js

Страница 281 из 325
Константин
04.07.2018
12:53:03
Гугл индекс будет нормально работать? или нужно что-то предпринять?

Bohdan
04.07.2018
12:55:53
Серверный рендеринг предпринять

Andrey
04.07.2018
13:14:42
Я недавно под себя настроил prerender от сервиса prerender.io, Сам prerender.io фигня

Bohdan
04.07.2018
13:18:37
Ооо, headless chrome юзает Крутяк

Google
Andrey
04.07.2018
13:23:15
https://github.com/prerender/prerender

Но все равно не то ) Хочется SSR

Bohdan
04.07.2018
13:30:21
Та пофиг)

Artem
04.07.2018
16:08:52
Как отловить асинхронный параметр в компоненте? - https://codepen.io/verbart/pen/jKRmYz?editors=1010

Remite
04.07.2018
17:34:55
Как отловить асинхронный параметр в компоненте? - https://codepen.io/verbart/pen/jKRmYz?editors=1010
передавать обьект и связывать свойство обькта со значением

Artem
04.07.2018
18:38:29
передавать обьект и связывать свойство обькта со значением
А если передавать можно только в таком виде?

Dart
05.07.2018
10:29:19
Всем Привет. Вопрос новичка: - AngularJs 1.6 - Legacy приложение - Есть форма, пользователь выбирает необходимые параметры - Нажимает кнопку Поиск - данные забираются с сервера и отображаются в таблице - Далее пользователь может выбрать строку, в таблице и переходит на детали. - В деталях присутствует кнопка Назад. По нажатию должны вернуться к таблице. Подскажите: как сохранить состояние в url, чтобы при переходе обратно снова востановить выбранные параметры поиска и запросить данные ?

Andrey
05.07.2018
10:31:28
Может через history api?

Dart
05.07.2018
10:34:53
Может через history api?
Это $location.search ?

Remite
05.07.2018
10:35:32
а может не нужно хранить состояние в урл, а просто хранить данные которые были получены в тот раз с учетом настроек формы в сервисе?

Sergey
05.07.2018
10:37:01
ангуляр js 1.х отжил свое?

Bohdan
05.07.2018
10:40:35
Поддержка кажется всьо

Google
Vitaliy
05.07.2018
10:49:47
https://monsterlessons.com/project/lessons/angular-route-v-angularjs может поможет

+- одно,два урока, раньше и позже, помогут в пониманиях

Dart
05.07.2018
10:56:08
а может не нужно хранить состояние в урл, а просто хранить данные которые были получены в тот раз с учетом настроек формы в сервисе?
Думал про такой вариант. Но необходимо, чтобы была возможность копи/пасте ссылки другому пользователю

+- одно,два урока, раньше и позже, помогут в пониманиях
Спасибо. Посмотрел. про $routeParams читал, знаю. У меня была идея реализовать так: 1. После нажатия кнопки Поиск - сформировать url 2. Пользователь перейдет на Детали 3. Нажав кнопку назад вернется на страницу с уже готовым url 4. Контроллер должен, при инициализации, прочитать параметры из url Как то так?

ангуляр js 1.х отжил свое?
Да :( Legacy... Хочу переводить на angular 6

Sergey
05.07.2018
11:10:35
какие преимущества у angular 6 перед тем же vue?

Stas
05.07.2018
13:08:29
Ребятки, столкнулся с проблемой, в ноде через паспорт при авторизации через гугл выдаёт ошибку связанную с заголовком. Без ангуляра всё норм пропускает. Кто-то мб сталкивался и знает что там в ангуляре нужно добавить?

Vitaliy
05.07.2018
13:11:59
Слишком мало входных данных, искаженный контекст получаеться

Vitaliy
05.07.2018
13:16:13
это мне ответ?
Прошу прощения Stas, да, мало инфы для понимания четко, вопроса

Stas
05.07.2018
13:19:45
Прошу прощения Stas, да, мало инфы для понимания четко, вопроса
Я честно не знаю что добавить, ангуляр тут участвует только в вызове роута. Но не хватает какого-то заголовка. С идентичным кодом на ноде без ангуляра, выдает гугл форму для входа, с ангуляром выдаёт ошибку. let loginGoogle = () => { return $http.get(`/api/auth/google`); }; Вот ошибка Failed to load https://accounts.google.com/o/oauth2/v2/auth?response_type=code&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fauth%2Fgoogle%2Fredirect&scope=profile%20email%20openid&client_id=1060656164349-rpch2ibsm97k8kkc390bbv5m419g0g4h.apps.googleusercontent.com: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access.

Vitaliy
05.07.2018
13:20:55
Ну вот, теперь вопрос начал принимать хоть какие то краски))) Access-Control-Allow-Origin - это ключ к успешному ответу

Stas
05.07.2018
13:21:38
Вот вызов на ноду, если вдруг кто работал с ним router.get('/google', passport.authenticate('google', { scope: ['profile', 'email', 'openid'] })); вот настройки паспорта passport.use(new GoogleStrategy({ callbackURL: '/auth/google/redirect', clientID: keys.google.clientID, clientSecret: keys.google.clientSecret }, function (accessToken, refreshToken, profile, done) { console.log(profile); console.log(profile.emails); }) );

Vitaliy
05.07.2018
13:23:08
попробуй так let loginGoogle = () => { return $http.get(/api/auth/google, {withCredentials : true}); };

просто если это кроссдоменный запрос, нужно учитывать CORS

Stas
05.07.2018
13:24:06
ошибка поменялась Failed to load https://accounts.google.com/o/oauth2/v2/auth?response_type=code&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fauth%2Fgoogle%2Fredirect&scope=profile%20email%20openid&client_id=1060656164349-rpch2ibsm97k8kkc390bbv5m419g0g4h.apps.googleusercontent.com: Redirect from 'https://accounts.google.com/o/oauth2/v2/auth?response_type=code&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fauth%2Fgoogle%2Fredirect&scope=profile%20email%20openid&client_id=1060656164349-rpch2ibsm97k8kkc390bbv5m419g0g4h.apps.googleusercontent.com' to 'http://localhost:3000/auth/google/redirect?code=4/AADGjD3O_3ym_naO9tHHObMh0uFgfOiOy0x4R8CXhfB1279KeBV4eQroX4UnnKbc-gR1pIWhQVHUZxgi_InvM-A&authuser=0&session_state=916319be0ed1b61990c86db6287932b555266ec0..52dd&prompt=none#' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access.

а не, вроде не поменялась)

Vitaliy
05.07.2018
13:25:52
кеш наверное

let loginGoogle = () => { return $http.get(/api/auth/google, {withCredentials : true, cache: false}); };

Google
Stas
05.07.2018
13:26:55
Я видел наноде добавляли вот такой список, но мне он не помог. Возможно тоже самое нужно указать в ангуляре как-то? app.use(function(req, res, next) { res.setHeader('Access-Control-Allow-Origin', 'http://localhost:3000'); res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE'); res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type'); res.setHeader('Access-Control-Allow-Credentials', true); next(); });

Vitaliy
05.07.2018
13:28:14
ну да можно добавить. Но withCredentials : false - как раз и говорит что бы запрос был пропущен без учета проверок домена

Stas
05.07.2018
13:28:22
я с этой ошибкой уже дня 2 вожусь, есть куча подобных проблем на стековерфлоу, но нет ответа (

Vitaliy
05.07.2018
13:28:40
тю ...

я ошибся

let loginGoogle = () => { return $http.get(/api/auth/google, {withCredentials : false, cache: false}); };

Stas
05.07.2018
13:30:15


тоже самое вроде

Vitaliy
05.07.2018
13:32:19
ну тогда последнее это - добавить шапку самому, как писалось выше "в ноде .." вот так headers: { 'Authorization': 'Basic bashe64usename:password' }

let loginGoogle = () => { return $http.get('/api/auth/google', { //withCredentials : false, cache: false, headers: { 'Authorization': 'Basic bashe64usename:password', '...': '...' } }); };

Stas
05.07.2018
13:34:39
спс, сейчас попробую

Vitaliy
05.07.2018
13:35:18
велком, но логика только такова, не иначе

это ошибки именно CORS

Stas
05.07.2018
13:39:28
ошибки поменялись Failed to load https://accounts.google.com/o/oauth2/v2/auth?response_type=code&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fauth%2Fgoogle%2Fredirect&scope=profile%20email%20openid&client_id=1060656164349-rpch2ibsm97k8kkc390bbv5m419g0g4h.apps.googleusercontent.com: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access. The response had HTTP status code 405.

Vitaliy
05.07.2018
13:42:38
ух ты, 405

что то новенькое

а что там с заголовком Access-Control-Allow-Methods?

тут цепочка обьясняеться у автентификации по oAuth2 google

https://stackoverflow.com/questions/24026431/google-oauth2-0-405-error

Google
Vitaliy
05.07.2018
13:46:03
на получения КОДа - ПОСТ запрос а не ГЕТ ))

по этому и 405

Response to preflight request .... это сервис гугла опроверг запрос и в заголовке написал типа по параметру шапки Access-Control-Allow-Origin - 405

Stas
05.07.2018
13:53:32
я короче сделал вот так let loginGoogle = function() { window.open('/api/auth/google','','width=400,height=400'); }; вместо перенаправления и начало хотя бы форму входа выдавать

Vitaliy
05.07.2018
13:54:26
тоже выход ))

Stas
05.07.2018
13:54:51
но я не понимаю в чём выход)))

просто увидел такое решение, но в чём прикол не пойму

какая разница в каком окне оно мне выдаст форму)

Vitaliy
05.07.2018
13:57:25
с формы csrf сработает, это второй метод защиты данных для передаваемых данных на сервер

а АПИ - имеет CORS prefleit

и вот с ним вся трабла

еще выход посмотреть какую нибудь библу для google auth как она реализует запрос, что туда пихает

полюбому мелочь какая то

ошибка поменялась - это уже говорит о том что проблема найдена но не решена ))

Stas
05.07.2018
14:04:43
я пробовал делать не гет запрос а пост, ничего не происходит)

с окошком работает, но это бредовое решение как по мне, буду дальше ковыряться

может натолкнёшь на мысль что мне хотя бы искать в гугле?

Vitaliy
05.07.2018
14:09:26
реализацыя аутентификации server side

для ангуляраджиес

Stas
05.07.2018
14:09:44
спасибо

Google
Stas
05.07.2018
16:07:08
ребятки, вопрос всё еще актуален ?

Remite
05.07.2018
17:11:52
Гугл не пускает по корсу из за доменного имени, localhost. Мое мнение.

Stas
05.07.2018
17:18:39
с локалхоста без ангуляра пускает

я вот добавил кнопку которая напрямую вызывает с бэка, оно пропускает, но после перезагрузки ?

типа редирект не делает

но когда впишу определённый путь то проходит

но к сожалению такое работает когда в роутах нет otherwise

иначе перенапрявляет на главную

если кто делал аутентификацию через соц сети (nodejs+angularjs) помогите плз

Andrey
05.07.2018
17:37:20
гугл не пускает потому что ему нужен домен, а не какой-то неизвестный ип

Stas
05.07.2018
17:38:58
гугл не пускает потому что ему нужен домен, а не какой-то неизвестный ип
Я с нода спокойно входил с локалхоста, а когда на фронте есть ангулярджс, вот тогда проблемы

и когда я просто ввожу в адресную строку http://localhost:3000/auth/google, тоже работает

Andrey
05.07.2018
17:44:09
тебе домен нужен и добавить твой локальній домен фронта в гугл

AluV
05.07.2018
17:44:15
Привет, продскажите пожалуйста, правильно ли если у меня везде: $scope: any, $state: any, StateStack: any, Restangular: any, toastr: any, UnsavedChanges: any, _: any, $q: any

Andrey
05.07.2018
17:44:40
то это хреново если any

AluV
05.07.2018
17:45:13
ну scope в любом случае any, а вот как задавать другим не знаю

Andrey
05.07.2018
17:46:40
почему any ? ng.IScope

есть такая штука как @types возможно к вашей либе будут описаны типы

Ricky
05.07.2018
17:47:11
Я с нода спокойно входил с локалхоста, а когда на фронте есть ангулярджс, вот тогда проблемы
не морочь яйца и тестируй через cURL, подставь свой внешний локалхост адрес, его можно найти в терминале командной строки командой ifconfig

AluV
05.07.2018
17:48:35
почему any ? ng.IScope
ну тогда я не могу в scope любые свои данные и функции передавать

Страница 281 из 325