SolomonRei
Green Team
				
			
- 27.08.2018
- 24
- 1
Добрый вечер.
Делаю прямую авторизацию в вк, если у пользователя стоит двухфакторная аутентификация, то нужно делать дополнительный запрос на подтверждение. В ответ пользователю приходит 6-ти значный код, который должен ввести в форму.
Дальше что с этим кодом делать и как получить токен, не понятно.
Цитата:
Ну, я собственно это и делаю
	
	
	
	
		
в итоге ошибка
{"error":"invalid_request","error_type":"wrong_otp","error_description":"wrong code"}
Подскажите пожалуйста, что можно сделать, может быть я не так понял документацию, спасибо!
Ссылка на документацию
				
			Делаю прямую авторизацию в вк, если у пользователя стоит двухфакторная аутентификация, то нужно делать дополнительный запрос на подтверждение. В ответ пользователю приходит 6-ти значный код, который должен ввести в форму.
Дальше что с этим кодом делать и как получить токен, не понятно.
Цитата:
Необходимо запросить у пользователя код подтверждения и повторно отправить запрос на авторизацию с дополнительным параметром code, содержащим код подтверждения
Ну, я собственно это и делаю
		PHP:
	
	public function dataWrite() 
 {
//.......
return $this->sendQuery($this->collectQuery(Config::CLIENT_ID, Config::CLIENT_SECRET, $this->data['email'], $this->data['pass'], $this->data['code'], Config::SCOPE));
}
private function collectQuery(string $cliendId, string $clientSecret, string $username, string $password, string $code, string $scope) {
        $this->params = [
            'grant_type' => 'password',
            'client_id' => $cliendId,
            'client_secret' => $clientSecret,
            'username' => $username,
            'password' => $password,
            'code' => $code,
            '2fa_supported' => 1,
            'v' => '5.103'
        ];
        return urldecode(http_build_query($this->params));
    }
    private function sendQuery($query) {
            $curl = curl_init();
            curl_setopt($curl, CURLOPT_URL, "https://oauth.vk.com/token?".$query);
            curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);
            $out = curl_exec($curl);
            $q = $out;
            curl_close($curl);
            return $q;
    }{"error":"invalid_request","error_type":"wrong_otp","error_description":"wrong code"}
Подскажите пожалуйста, что можно сделать, может быть я не так понял документацию, спасибо!
Ссылка на документацию
 
	 
	 
	 
	 
	 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		 
	