Перейти к публикации

Перестала работать авторизация через ВК


Рекомендованные сообщения

Здравствуйте, покупал 11 версию когда-то. Вчера заметил, что вылетает ошибка при попытке зарегистрироваться или войти. Сегодня решил проверить на 12 версии, думал исправили уже, но нет, тоже не работает, ошибки везде разные. На 12 версии вылетает: 

{"error":"invalid_request","error_description":"redirect_uri is incorrect, check application domain in the settings page"}

На 11 версии следующее: 

{"error":"unsupported_response_type","error_description":"incorrect response_type should be code or token"} (если строку для входа вставить в браузер, а сам движок через lang[error...] выписывает:

Не удалось получить данные пользователя из социальной сети. Либо был неверно указан секретный ключ в настройках сети, либо на сервере запрещены исходящие внешние соединения, и не удалось подключиться к социальной сети.

Если добавлять строку с версией другое выписывает.

 

Как я понял у ВК вчера было обновление какое-то и теперь нужно при запроси к АПИ добавлять в конец его версию, но добавив к запросу её ничего не меняется, кроме слов в ошибке. Как не работала так и не работает. Прошу руки помощи ;)

http://site.ru/index.php?do=auth-social&provider=vk&code=0ad434e082e13b990b&state=6ca8ca86c2db504259ad3fee5d71a21a

текст другой ошибки:

Не удалось получить данные пользователя из социальной сети.

{"error":"invalid_request","error_description":"redirect_uri is incorrect, check application domain in the settings page"}

 

Чекнул настройки ВК приложения, исправил, выдаёт уже вышеописанную ошибку:

Не удалось получить данные пользователя из социальной сети.

 
Ссылка на сообщение
Поделиться на других сайтах
  03.03.2018 в 11:25, shesgotthejack сказал:

думал исправили уже, но нет

Расширить  

Даже при авторизации в контакте на одноклассниках вылетает ошибка

{"error":"invalid_request","error_description":"Security Error"}

они у себя еще там не разобрались

Ссылка на сообщение
Поделиться на других сайтах
  03.03.2018 в 12:33, LADYX сказал:

Даже при авторизации в контакте на одноклассниках вылетает ошибка

{"error":"invalid_request","error_description":"Security Error"}

они у себя еще там не разобрались

Расширить  

Зашёл сейчас на одноклассники, у них нет авторизации через ВК, или недавно убрали?

Ссылка на сообщение
Поделиться на других сайтах
  03.03.2018 в 13:13, shesgotthejack сказал:

Зашёл сейчас на одноклассники, у них нет авторизации через ВК, или недавно убрали?

Расширить  

попробуйте пригласить друзей из вк в ок

Ссылка на сообщение
Поделиться на других сайтах

У меня было следующее:

  Цитата

Не удалось получить данные пользователя из социальной сети.

Расширить  

 в engine/classes/social.class.php добавил следующее: 

'v' => '5.73'

~29 строка,

		$params = array(
			'client_id'     => $social_config['vkid'],
			'client_secret' => $social_config['vksecret'],
			'code' => $_GET['code'],
			'redirect_uri'  => $config['http_home_url'] . "index.php?do=auth-social&provider=vk".$ext_uri,
            'v' => '5.73'
		);

 'v' => '3.0'

~41 строка

$params = array(
	'uids'         => $token['user_id'],
	'fields'       => 'uid,first_name,last_name,nickname,photo_big',
	'access_token' => $token['access_token'],
    'v' => '3.0'
);

также везде где встретил авторизацию VK добавил в массив 'v' => '5.73' в файлах /engine/init.php, /engine/modules/social.php

Изменено пользователем kykyiiikuh
Ссылка на сообщение
Поделиться на других сайтах
  04.03.2018 в 09:22, kykyiiikuh сказал:

У меня было следующее:

 в engine/classes/social.class.php добавил следующее: 

'v' => '5.73'

~29 строка,

		$params = array(
			'client_id'     => $social_config['vkid'],
			'client_secret' => $social_config['vksecret'],
			'code' => $_GET['code'],
			'redirect_uri'  => $config['http_home_url'] . "index.php?do=auth-social&provider=vk".$ext_uri,
            'v' => '5.73'
		);

 'v' => '3.0'

~41 строка

$params = array(
	'uids'         => $token['user_id'],
	'fields'       => 'uid,first_name,last_name,nickname,photo_big',
	'access_token' => $token['access_token'],
    'v' => '3.0'
);

также везде где встретил авторизацию VK добавил в массив 'v' => '5.73' в файлах /engine/init.php, /engine/modules/social.php

Расширить  

Спасибо тебе огромное, дружище! Теперь наконец-то заработало. А почему v=3.0, не подскажешь? До этого добавлял 5.73 - не работало. В /engine/init.php можно ничего не менять, он тут не при чём ;)

  03.03.2018 в 14:52, LADYX сказал:

попробуйте пригласить друзей из вк в ок

Расширить  

К сожалению, в ОК не зареган, но поверю на слово. 

Ссылка на сообщение
Поделиться на других сайтах

Опубликовали необходимые изменения, которые необходимо внести в DLE, для возобновления поддержки авторизации в данной социальной сети https://dle-news.ru/tips/1743-izmeneniya-api-avtorizacii-v-socialnoy-seti-vkontakte.html

Ссылка на сообщение
Поделиться на других сайтах
  05.03.2018 в 00:28, shesgotthejack сказал:

А почему v=3.0, не подскажешь? До этого добавлял 5.73 - не работало.

Расширить  

Если зайти на https://vk.com/dev/users.get, то там есть "Пример запроса", и там можно посмотреть то что возвращает api vk.

DLE использует имя массива uid, а uid доступен только в версии 3.0, выше 3.0 используется имя id.

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

как-то так можно объяснить :D

Ссылка на сообщение
Поделиться на других сайтах
  05.03.2018 в 07:34, kykyiiikuh сказал:

Если зайти на https://vk.com/dev/users.get, то там есть "Пример запроса", и там можно посмотреть то что возвращает api vk.

DLE использует имя массива uid, а uid доступен только в версии 3.0, выше 3.0 используется имя id.

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

как-то так можно объяснить :D

Расширить  

понял, когда отменят поддержку АПИ 3.0 будем снова тогда менять)

Ссылка на сообщение
Поделиться на других сайтах
  05.03.2018 в 09:45, shesgotthejack сказал:

понял, когда отменят поддержку АПИ 3.0 будем снова тогда менять)

Расширить  

Насколько я понял, это версию оставили для совместимости. Хотя странная совместимость сделать вроде как по дефолту, то требовать ее указывать. В любом случае это решение на сейчас, и для быстрого устранения проблемы. В новой версии будет уже полная поддержка именно 5.73, ее просто одной строкой не добавить.

Ссылка на сообщение
Поделиться на других сайтах
  05.03.2018 в 03:56, celsoft сказал:

Опубликовали необходимые изменения, которые необходимо внести в DLE, для возобновления поддержки авторизации в данной социальной сети https://dle-news.ru/tips/1743-izmeneniya-api-avtorizacii-v-socialnoy-seti-vkontakte.html

Расширить  

ВК заработал,

не узнаёт Фейсбук: "Не удалось получить данные пользователя из социальной сети. Либо был неверно указан секретный ключ в настройках сети, либо на сервере запрещены исходящие внешние соединения, и не удалось подключиться к социальной сети."

и G+ "Error: redirect_uri_mismatch"

Проблемы с этими сетями возникли одновременно с ВК

Ссылка на сообщение
Поделиться на других сайтах
  07.03.2018 в 02:35, wildport сказал:

не узнаёт Фейсбук: "Не удалось получить данные пользователя из социальной сети. Либо был неверно указан секретный ключ в настройках сети, либо на сервере запрещены исходящие внешние соединения, и не удалось подключиться к социальной сети."

Расширить  

Какой версией DLE вы пользуетесь?

 

  07.03.2018 в 02:35, wildport сказал:

и G+ "Error: redirect_uri_mismatch"

Расширить  

Это ошибки в вашем приложении, на G+, вы не задали в настройках приложения параметр redirect_uri

Ссылка на сообщение
Поделиться на других сайтах
  07.03.2018 в 06:13, celsoft сказал:

Какой версией DLE вы пользуетесь?

 

Это ошибки в вашем приложении, на G+, вы не задали в настройках приложения параметр redirect_uri

Расширить  

11.2

Раньше всё работало, проблем с этим приложением (и другими) не возникало

параметр redirect_uri брать из инструкции в админпанели? ВК тоже на этот параметр матерился.

Ссылка на сообщение
Поделиться на других сайтах
  07.03.2018 в 09:29, wildport сказал:

Раньше всё работало, проблем с этим приложением (и другими) не возникало

Расширить  

И что, социальные сети часто меняют свои же правила, и ужесточают требования. И вам пишется что теперь этот параметр в приложении обязателен и указывать его нужно, и вам нужно его вносить, даже если раньше у вас его не было. Оно уже давно обязательно, только раньше они еще поддерживали такие приложения, теперь прекратили, и вам нужно переделать свое приложение.

 

Тоже самое у вас скорее всего и по facebook, оно не соответствует современным требованиям. Зайдите в настройки приложения и проверьте и переведите его на актуальные версии API. DLE поддерживает актуальные версии API что у facebook, что у google.

Ссылка на сообщение
Поделиться на других сайтах
  • 2 года спустя...

привет я сделал приложение авторизации через вк для сайта ftpby.ru id 7255832 но оно не работает пишет https://prnt.sc/syjw3u
почему так стало

тп вк написали

Не думаю, что это проблема хостинга. Тогда это похоже на проблему самого модуля dle. Проверьте, пожалуйста, чтобы везде, где передается версия API, была версия выше 5.81. По поводу жизненного цикла API мы написали тут https://vk.com/dev/constant_version_updates.

Проверьте, пожалуйста, чтобы везде, где передается версия API, была версия выше 5.81.
я все фаилы проверил там ни где не передаётся версия api какой код должен быть не подкажите

dle 11.0

$params = array(
            'client_id'     => $social_config['vkid'],
            'client_secret' => $social_config['vksecret'],
            'code' => $_GET['code'],
            'redirect_uri'  => $config['http_home_url'] . "index.php?do=auth-social&provider=vk".$ext_uri,
            'v' => '5.73'
        );

        $token = @json_decode(http_get_contents('https://oauth.vk.com/access_token' . '?' . http_build_query($params)), true);

        if (isset($token['access_token'])) {


$params = array(
    'uid'         => $token['user_id'],
    'fields'       => 'uid,first_name,last_name,nickname,photo_big',
    'access_token' => $token['access_token'],
    'v' => '3.0'
);

            $user = @json_decode(http_get_contents('https://api.vk.com/method/users.get' . '?' . http_build_query($params)), true);

            if (isset($user['response'][0]['uid'])) {

                $user = $user['response'][0];

                if( !$token['email'] AND isset($_GET['email']) ) $token['email'] = $_GET['email'];

                return array ('sid' => sha1 ('vkontakte'.$user['uid']), 'nickname' => $user['nickname'], 'name' => $user['first_name'].' '.$user['last_name'], 'email' => $token['email'], 'avatar' => $user['photo_big'], 'provider' => 'vkontakte' );

            } else return $lang['social_err_3'];

        } else return $lang['social_err_1'];

    }

}

 

что нужно поменять что заработала вк?

Ссылка на сообщение
Поделиться на других сайтах

Обновить DLE до актуальной версии нужно. Версия 11.0 уже слишком старая. А соц. сеть с тех пор меняла принципы работы своего API

Ссылка на сообщение
Поделиться на других сайтах
  21.06.2020 в 09:29, celsoft сказал:

Обновить DLE до актуальной версии нужно. Версия 11.0 уже слишком старая. А соц. сеть с тех пор меняла принципы работы своего API

Расширить  

у у меня сайт на кодировке windows - 1251  я обновил до версии 12.1 и не помогло

 

Ссылка на сообщение
Поделиться на других сайтах
  22.06.2020 в 14:40, zik.by сказал:

у у меня сайт на кодировке windows - 1251  я обновил до версии 12.1 и не помогло

 

Расширить  

Вам нужно обновится до 14.0, тогда поможет.  Правда кодировка у Вас изменится и будет UTF-8 

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...