Форум программистов, компьютерный форум, киберфорум
Java EE (J2EE)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 25.05.2016
Сообщений: 75
1

Как самому сделать вход , не через loadUser для oauth2

07.02.2019, 21:49. Показов 769. Ответов 5
Метки нет (Все метки)

Я не знаю почему, но вк не работает для Security 5

Java
1
2
3
4
.oauth2Login()
            .authorizationEndpoint()
            .baseUri("/oauth2/authorize")
            ...
Я сделал как делают через PHP , то есть получить access_token и сделал запрос на данные

Java
1
String URL2 = "https://api.vk.com/method/users.get?user_id="+listJson.get("user_id")+"&access_token="+listJson.get("access_token")+"&fields=uid,first_name,last_name,email,&v=5.92";
в итоге я получил все атрибуты которые хотел:

Java
1
2
3
4
5
6
7
ResponseEntity<String> response2 = restTemplate.exchange(URL2, //
                    HttpMethod.GET, entity, String.class);
        String result2 = response2.getBody();
        Map<String,Object> listJson2 = jsonParser.parseMap(result2);
       List<Object> listJson3 = (List<Object>) listJson2.get("response");
       attributes = (Map<String, Object>) listJson3.get(0);
       attributes.put("email",listJson.get("email"));
Но что делать дальше? Я знаю что можно сделать так:


Java
1
2
3
4
UsernamePasswordAuthenticationToken authToken = new UsernamePasswordAuthenticationToken(username, password);
authToken.setDetails(new WebAuthenticationDetails(request));     
Authentication authentication = authenticationManager.authenticate(authToken);
SecurityContextHolder.getContext().setAuthentication(authentication);
и каждый раз проверять есть ли в базе данных , если есть создавать нового. Но мне кажется это неправильно.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.02.2019, 21:49
Ответы с готовыми решениями:

Как сделать самому фантомное питание 48v для конд.микрофона?
Как сделать самому фантомное питание 48v для конденсаторного микрофона? Подскажите простую схемку!...

Народ как сделать вход на форум через адресную строку браузера???
Народ как сделать вход на форум через адресную строку браузера??? вот форма входа: &lt;meta...

Как сделать на передней панели вход для звука и микрофона
Всем привет,вот дома имеется компьютер,мне хочется подключить звук на переднюю панель компа.Разъём...

Что лучше: плагин чата в WordPress, или самому сделать через php, ajax?
Я сделал чат на пхп и аякс, впринципе все работает как надо. Просто каждые 2 секунды через аякс к...

5
Эксперт Java
378 / 370 / 114
Регистрация: 30.06.2010
Сообщений: 1,445
08.02.2019, 07:30 2
задача то какая?
0
0 / 0 / 0
Регистрация: 25.05.2016
Сообщений: 75
08.02.2019, 11:57  [ТС] 3
LeX , сделать авторизация через VK
0
Эксперт Java
378 / 370 / 114
Регистрация: 30.06.2010
Сообщений: 1,445
08.02.2019, 11:58 4
задача то какая?Crazy_devil, spring boot?
0
0 / 0 / 0
Регистрация: 25.05.2016
Сообщений: 75
08.02.2019, 12:39  [ТС] 5
LeX ,да, spring boot
0
Эксперт Java
378 / 370 / 114
Регистрация: 30.06.2010
Сообщений: 1,445
11.02.2019, 07:11 6
Crazy_devil, учимся гуглить
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.02.2019, 07:11

Помощь в написании контрольных, курсовых и дипломных работ здесь.

VK oauth2 client_secret is undefined Spring5 oAuth2
spring: datasource: url:...

Можно ли из 4 колонок сделать акустическую систему для ПК самому?
Доброго времени суток! Можно ли из 4 колонок сделать акустическую систему для ПК самому, чтоб...

Как самому сделать сборку?
Привет ребята, у меня есть образ чистого виндовса в iso файле, как мне сделать так, чтобы когда я...

Авторизация на сайте через OAuth2
Добрый день! Подскажите пожалуйста как авторизоваться программно на сайте ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.