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

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


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

Здравствуйте, покупал 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"}

 

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

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

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

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

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

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

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

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

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

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

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

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

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, 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
Ссылка на сообщение
Поделиться на других сайтах
14 часа назад, 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 в 18:52, LADYX сказал:

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

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

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

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

Ссылка на сообщение
Поделиться на других сайтах
7 часов назад, 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

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

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

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

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

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

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

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

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

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

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

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

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

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

и G+ "Error: redirect_uri_mismatch"

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

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

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

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

 

3 часа назад, wildport сказал:

и G+ "Error: redirect_uri_mismatch"

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

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

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

 

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

11.2

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

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

Ссылка на сообщение
Поделиться на других сайтах
50 минут назад, 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 в 12:29, celsoft сказал:

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

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

 

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

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

 

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

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

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

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

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

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

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

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

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

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

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